我有一个小型的SharePoint托管加载项,需要在Intranet上的SAP系统上调用Web服务。
我使用以下代码段(JSOM):
response($.map(data.Registro, function (item) {
return {
label: item.AR_DENO + " " + item.AR_LER,
ler: item.AR_LER +' '+ item.lerDeno,
value: item.codigo
};
}));
在标准sharepoint 2013系统上,我收到错误消息:
function sendSoapByProxy(url: string, xml: string) {
let request = new SP.WebRequestInfo();
request.set_url(url);
request.set_body(xml);
request.set_method("POST");
request.set_headers({
'Content-Type': 'application/xop+xml'
});
let response = SP.WebProxy.invoke(appctx, request);
appctx.executeQueryAsync(
function (sender, args) {
debugger;
s.changeStatus(response.get_statusCode() + "<br/>" + response.get_body(), s.StatusClass.info);
},
function (sender, args) {
debugger;
s.changeStatus(response.get_body(), s.StatusClass.error);
console.error(response.get_statusCode());
console.error(response.get_body());
console.error(args.get_errorDetails());
console.error(args.get_stackTrace());
}
);
}
我发现以下代码段可以解决服务器场范围内的问题
403 An exception occurred while processing the request - 'Access to https://<serviceurl> is denied. SharePoint is currently configured to block intranet calls.
这在我的开发系统中工作正常。 不幸的是,一旦将插件添加到生产系统中,这实际上不是一个选择。
是否可以在网站集范围内配置此方法?或者您可以建议其他方法吗?
我如何在SharePoint Online中做同样的事情?
关于, 托比亚斯