0

我想使用 ajax jquery 访问 php web 服务这是我的代码:-

$.ajax({
        type: "POST",
    url:'http://localhost:8080/onestatus/webservice/login?email=kk@kk.com&password=123456',
         cache: false,
          dataType: "json",
          success: onSuccess
        });

function onSuccess(data) {
       // var data = data.d;
        var result = $.parseJSON(data);
        var arrayObject = new Array();
        for (var i = 0; i < result.user.length; i++) {
           // $('#resultLog').append('<li>' + result.user[i].user_id + '</li>');
         }
    }

当我使用 dataType: "json" 然后我得到 request.status=0 注意到得到响应

当使用 dataType: "jsonp" 在 firbug 中出现错误

SyntaxError: invalid label [Break On This Error]
{"user":[{"response":"success","user_id":"28","session_id":123456}]}

4

1 回答 1

0

两种情况:

  1. URLhttp://localhost:8080/onestatus/webservice/login放置在与请求域不同的域中(注意:端口也必须匹配):您将无法请求 JSON,它受SOP限制
  2. 您可以从不同的域请求JSONP,但收到的响应不是 JSONP

那么你可以做什么:当 web 服务在你的控制之下时,将响应更改为正确的 JSONP。否则你什么也做不了。

于 2012-07-19T09:36:34.303 回答