1

我需要从移动设备上的不同域访问共享点列表。这是我的代码,一个简单的获取请求:

$.support.cors = true;

$(function() {
$().SPServices({
    operation: "GetListItems",
    webURL: "http://myurl.com/project/",
    listName: "PM-Registration",
    CAMLQuery: '<Query></Query>',
    error: function (xhr, message, error) {
          alert('error : ' + error);
    },
    completefunc: function (xData, status) {
        alert('Status: '+status+' xdata: ' + xData.statusText);
        alert('RESPONSE: ' + xData.responseText);
    }
});
});

问题似乎是 CORS 阻止了请求,但我通常之前启用它。如果我使用以下命令,它可以与 Chrome 完美配合:--args --disable-web-security,以及 Safari 桌面,但不适用于 Firefox 和 Safari iOS...我在 Chrome 上出现错误而没有禁用网络安全:

No 'Access-Control-Allow-Origin' header is present on the requested resource

我错过了什么吗?我想这是一个客户端问题,因为它可以在没有网络安全和 Safari 桌面的情况下与 Chrome 一起使用

4

1 回答 1

1

我会回答我的问题。

即使它在 IE 上运行并且在 Chrome 上使用特定命令,这是服务器端设置的安全问题,只有服务器可以通过修改它来更改它Access-Control-Allow-Origin

我没有找到解决方法来避免客户端出现此 CORS 问题。我的解决方案是将我的 HTML 页面移动到与我的 SharePoint 相同的域中。我现在有我的 SharePoint :www.mysharepoint.com和我的移动 web 应用程序www.mysharepoint.com/mobile/index.html

于 2014-10-02T12:50:51.153 回答