如何在应用程序中获取响应文本并在交叉ajax调用中绑定到标签

时间:2012-12-11 10:59:25

标签: javascript html ajax

我使用Ajax调用从其他域调用Web服务,我希望通过使用以下代码从我的应用程序中的服务器返回响应,我在firebug中获取响应文本但不在我的JavaScript代码中。控制没有显示成功和错误响应它直接输出。

我想在我的成功或错误部分做出回应,但两者都没有在此处理。
我很努力,但没有找到任何解决方案,请任何人帮助我 我遇到了麻烦。我希望有人可以通过使用Ajax调用来帮助我调用跨域Web服务。我试着从1周开始但直到找不到任何解决办法。我收到了浏览器的响应,但没有得到我的实际代码。 我的JavaScript代码。

    crossdomain.async_load_javascript(jquery_path, function () {
              $(function () {
                  crossdomain.ajax({
                      type: "GET",
                     url: "http://192.168.15.188/Service/Service.svc/GetMachineInfo?serialNumber="+123,                
                      success: function (txt) {
                          $('#responseget').html(txt);
                          alert("hii get");
                      }
                  });

                  crossdomain.ajax({
                      type: "POST",
                      url: "http://192.168.15.188/Server/Service.svc/GetEvents/",
                     // data: "origin=" + escape(origin),
                      success: function (txt) {
                          $('#responsepost').html(txt);
                          alert("hii post");
                      }
                  });
              });
          });
        </script>

1 个答案:

答案 0 :(得分:1)

您不能忽略Same Origin Policy

只有三种解决方案可以从来自其他域的网络服务中获取答案:

  • 在服务器端(在您的服务器上)进行操作
  • 让浏览器认为它来自同一个域,使用服务器上的代理
  • 通过添加JSONP
  • 来更改网络服务服务器CORS headers或(今天更清洁)