【问题标题】:Error to call web service with ajax使用 ajax 调用 Web 服务时出错
【发布时间】:2013-09-09 18:06:57
【问题描述】:

您好,我用这个 javascript 函数创建了一个 html 页面

           function getData() {
                if(window.XMLHttpRequest) {
                    req = new XMLHttpRequest();
                    req.onreadystatechange=sendData;
                    req.open("GET", "http://service-page/axis2Example-1.0.0-SNAPSHOT/services/SystemService/viewUsers?positionX=10&positionY=30&round=10", true);
                    req.send();
                }
            }

            function sendData() {
                if(req.readyState==4 & req.status==200) {

            }
        }

此函数用于调用 Web 服务。问题是我的浏览器会回复此消息:

XMLHttpRequest cannot load ........ autoCreate=false&log=true. Origin ...... is not allowed by Access-Control-Allow-Origin.

有人知道解决办法吗?

【问题讨论】:

  • 您不能向与最初加载代码的协议/服务器/端口不同的协议/服务器/端口触发 ajax 请求。除非您的浏览器实际位于 http://service-page,否则它可能会被视为跨域请求并出于安全原因被阻止。

标签: javascript ajax web-services xmlhttprequest axis2


【解决方案1】:

您必须在您的 ajax 目标服务器中启用 CORS(跨域资源共享)。

您可以在此处找到更多信息 http://enable-cors.org/server.html

【讨论】:

    猜你喜欢
    • 2012-07-13
    • 1970-01-01
    • 2015-12-29
    • 2018-12-25
    • 2015-01-03
    • 1970-01-01
    • 2023-04-04
    相关资源
    最近更新 更多