无法使用javascript客户端访问远程web服务

Failed to access remote web service using javascript client

本文关键字:web 服务 访问 客户端 javascript      更新时间:2023-09-26

我试图使用javascript访问.net Web服务,但出现以下错误:

跨源请求仅支持以下协议方案:http、data、chrome、chrome扩展、https、chrome资源扩展。

这是java脚本代码:

    var v = {"name":"zain",
            "password":"abc"
            }
 //           alert("wat");
            $.ajax({
                type: "POST",
                url: "webcare.azurewebsites.net/WCService.asmx/GetParent",
                data: JSON.stringify(v),
                contentType: "application/x-www-form-urlencoded",
                dataType: "json",
                success: OnSuccess,
                error: OnError
                            });
        }
        function OnSuccess(data, status)
        {
           alert("success: "+data.d);
        }
        function OnError(request, status, error)
        {
            alert("error: "+request.statusText);
        }

aa根据一个解决方案,该解决方案说在我的web服务旁边添加一个clientaccesspolicy.xml文件,但它仍然给出相同的错误。这是我在clientaccesspolicy.xml 中添加的代码

<?xml version="1.0" encoding="utf-8"?>
<access-policy>
  <cross-domain-access>
    <policy>
      <allow-from http-request-headers="SOAPAction">
        <domain uri="*"/>
      </allow-from>
      <grant-to>
        <resource path="/" include-subpaths="true"/>
      </grant-to>
    </policy>
  </cross-domain-access>
</access-policy>

您还需要在适当的位置有一个跨域xml文件https://msdn.microsoft.com/en-us/library/cc197955%28VS.95%29.aspx.查找"使用crossdomain.xml文件以允许跨域访问"。按照那篇文章中的说明进行操作。