jQuery Mobile 및 PhoneGap 앱을 만들고 있습니다. 양식을 제출해야합니다. 나는 다음과 같이 만들었습니다 :JSONP가 작동하지 않습니다.
$.ajax(
{
url: 'http://ip.ip.ip.ip:8070/services/rest/operator/login',//?email=' + email + '&password=' + haslo,
dataType: 'jsonp',
type: 'GET',
callback: 'jsonpCallback',
jsonpCallback: 'jsonpCallback',
jsonp: '_jsonp',
data: ({'email' : email, 'password' : pass}),
contentType: 'application/x-www-form-urlencoded',
success: function (data) {
window.location = ('file:///android_asset/www/custom/main.html');
},
error: function (data) {
alert('Login i/lub hasło nieprawidłowe '+data);
}
});
이것은 Chrome에서 작동하지만 Android 기기에서는 작동하지 않습니다. PhoneGap과 jQuery Mobile에 대한 문서를 읽었으며 필자는 화이트리스트에 $ .mobile.allowCrossDomainPages와 $ .support.cors를 시도했습니다. PhoneGap이 크로스 도메인을 허용한다는 것을 알고 있으므로 데이터 유형을 json으로 변경하려고했습니다.
불행히도 서버 측 코드에 액세스 할 수 없습니다. 나는이 짧은 "병아리"를 가지고있다. 웹 서비스는 200 성공 또는 401 액세스 거부를 반환합니다.
<resource path="/operator">
<resource path="/login">
<method name="GET">
<request>
<representation mediaType="application/x-www-form-urlencoded">
<param name="email" style="query" type="xs:string"/>
<param name="password" style="query" type="xs:string"/>
</representation>
</request>
<response>
<representation mediaType="application/octet-stream"/>
</response>
무엇이 누락 되었습니까?
참고 : [object Object] 오류 메시지를 한 번만 받았습니다. 그러나 나는 잘 모른다 :
웹 서비스가 JSON-P를 반환하지 않으면 JSON-P를 사용할 수 없습니다! – Quentin