Я получаю следующее сообщение об ошибке из браузера отладчика:Невозможно получить данные POST из углового приложения для воспроизведения! Framework
Происхождение http://localhost:8000 не найден в заголовке Access-Control-Allow-Origin.
Однако я есть установить заголовок в моем Global.java
файл в моем API:
Global.java
@Override
public Promise<SimpleResult> call(Http.Context ctx) throws java.lang.Throwable {
Promise<SimpleResult> result = this.delegate.call(ctx);
Http.Response response = ctx.response();
response.setHeader("Access-Control-Allow-Origin", "*");
response.setContentType("application/json");
return result;
}
Вот мой маршрут API я ударяя.
маршруты
POST /api/users/insertuser @controllers.UserController.insertUser
А вот метод контроллера:
UserController.java
@BodyParser.Of(BodyParser.Json.class)
public Result insertUser() {
JsonNode json = request().body().asJson();
String email = json.findPath("email").asText();
String username = json.findPath("username").asText();
String password = json.findPath("password").asText();
if(email == null || username == null || password == null) {
return badRequest("Missing parameter[s]");
} else {
User user = new User(username, email, false, password, getDate(), getDate());
repo.insertUser(user);
return getUserByEmail(email);
}
}
Вот мой API вызов из моего углового применения:
userapiservice.js
var factory = {};
var baseUrl = 'http://127.0.0.1:9000/api/users/';
factory.insertUser = function (user) {
return $http({
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
url: baseUrl + 'insertuser/',
params: { username: user.username, email: user.email, password: user.password }
});
};
Есть ли что-то я пропускаю/делаю неправильно? Пробовал пару браузеров, застрял на нем уже около недели, я учился, когда занимаюсь, и я нашел Play! документация будет ... ладно.
вы пытались Goggle с этой ошибкой? Настройки CORS неверны на api – charlietfl
Да, я сделал, на самом деле у меня есть настройки CORS от Google, что я поставил неправильно? – user2324937
убедитесь, что разрешены запросы OPTIONS. Я ничего не знаю о 'play', но проблема, безусловно, в CORS https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS – charlietfl