В моем Ионная 2 приложение, я беру данные с примера сайта www.my-website.com/member/loginPersist.do
используя этот блок кода:
это
/member/loginPersist
является контроллером Spring MVC
регистрационное_имя service.ts
private GetUser(user : User): Promise<any> {
let options = this.makeHeader("post");
let x = this.http.post("http://my-website.com/member/loginPersist.do", this.serialize(user) ,options).toPromise().catch(this.handleError);
return x;
}
private makeHeader(method : string){
let headers = new Headers({
'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
'Accept': 'application/json, text/javascript, */*; q=0.01',
'X-Requested-With': 'XMLHttpRequest'
});
let options = new RequestOptions({ headers: headers });
return options;
}
Но я получаю нет ответа/ Пробел (без результатов json) и код состояния это 200 ОК. Но ответ пустой.
Но если я изменю URL на www.site.com/test.php
Я получаю ответ от PHP. Так что я знаю, что мой http запрос кода не проблема.
Эта проблема связана с сервером JSP / Spring? и как бы я получил ответ JSON
На основании предоставленной вами информации, я полагаю, что у вас возникли проблемы с запросами на разные источники. Пожалуйста, убедитесь, что в вашем контроллере разрешены перекрестные исходные запросы для метода. Просто аннотируйте метод
@CrossOrigin
Это в основном указывает на ваш сервер, который должен ответить браузеру, что он принимает запросы от любого домена. Вы также можете ограничить домены, которые вы хотите разрешить. Больше здесь http://docs.spring.io/spring/docs/current/spring-framework-reference/html/cors.html
Если вы не включите это на сервере, браузер не выполнит запрос из-за политик безопасности.
Других решений пока нет …