ajax - 访问控制允许来源无法识别
问题描述
我需要使用 SharePoint newform 中的 JavaScript/jquery 从外部服务器获取员工信息。首先我写了下面的代码
function CallClientIDWebSerivce() {
var URL = "http://applicationsrv/HRMServices.asmx/GetEmployeeInfo";
alert(URL)
$.ajax({
type: "POST",
url: URL,
dataType: "xml",
data:"userName:"+username+",date:"+today()+",modified_by:"+username+"}" ,
contentType: "application/xml; charset=utf-8",
success: function (response) {
alert(response);
},
failure: function (msg) {
alert('failure');
dialog.innerHTML = "Some Unknown Error Occured, Please Try Again";
}
});
}
并得到错误
XMLHttpRequest: Network Error 0x80070005, Access is denied.
我用谷歌搜索我发现它发生在跨域资源共享
中
,所以我添加Access-Control-Allow-Origin : "*",
到 ajax 但浏览器无法识别它并出现错误。
解决方案
您无需在客户端上执行任何操作。浏览器会自动完成。但应将共享点配置为允许来自其他域的脚本请求。在这里查看如何配置共享点: https ://social.msdn.microsoft.com/Forums/security/en-US/8dfc2b5e-1136-45a8-9d85-73ce9c98fd06/how-to-enable-cors-on-sharepoint -online-site?forum=sharepointdevelopment
推荐阅读
- excel - 如果单元格的部分值等于另一列的任何值,则条件格式化单元格
- apache-spark - 将 Spark SQL 批处理源转换为结构化流接收器
- javascript - 使用 React app .JS Promise 的 Google 登录未初始化 client_id
- mysql - Windows 上的 Docker 尝试启动 mysql 容器时出错
- aws-glue - 我可以在基于 Python 的 Glue 作业中对 Glue 连接执行任意 SQL 吗?
- javascript - 如何将一个对象旋转到另一个对象(慢慢地)
- c - C程序打印换行符
- visual-studio-2017 - Fortran 间歇性类型错误
- java - 使用 logback 停用 AWS Lambda Cloudwatch 上的调试日志记录
- javascript - 如何使用 node-module-version 57 安装 node-opus