我正在使用以下api调用进行提取调用,以从sharepoint在线列表中获取附件。由于某种原因,当我以前在线登录sharepoint时,API调用有效,但如果我在Chrome中打开访客窗口,我会收到302响应,并且图像不会显示。当我登录应用程序时进行身份验证时,对sharepoint的其他API调用都不会以这种方式运行。
fetchListAttachments(personsStateArray: any[], index: number) {
const dataUrl =
`/api/spdata/GetListAttachments('${this.listName
}')/items?$select=AttachmentFiles&$expand=AttachmentFiles`;
fetch(dataUrl, { credentials: "include", headers: { accept: "application/json" } })
.then(response => response.json());
}
答案 0 :(得分:0)
可能是由于访客窗口没有存储已验证您的Cookie。另外我想象一些,如果不是所有SP列表都必须通过HTTPS请求。除此之外你的代码看起来很好但是我们很高兴看到你如何呈现你的JSON输出,即向我们展示客户端代码(Render(),divs, <img/> etc
)。我还会做一件事,以确定它是否真的是一个演示文稿问题或响应问题,我的意思是尝试加载一个首先看不到图像的List。如果他们返回,那么任何事情应该和你的问题是UI层而不是响应。我的代码在类似Fetch()
中的返回列表很好,但显然你不能只将request.json()推送到客户端。希望这会有所帮助。