Angular Sharepoint/403错误-FormDigestValue在发布时是否应为一小时?
我创建了一个sharepoint online加载项,其中包含一个列表(LearningsList),我希望从嵌入式应用程序访问该列表 列出列表的内容可以很好地工作,但是当尝试向列表中添加项目时,我会遇到403禁止访问错误 我已经尝试连接到contextinfo并检索最新的FormDigestValue(返回很好),但是这仍然不起作用 我能看到的唯一问题是FormsDigestValue日期/时间总是比我的本地时间晚一小时。这可能是问题所在吗 我有管理员权限,可以手动添加项目罚款Angular Sharepoint/403错误-FormDigestValue在发布时是否应为一小时?,angular,rest,sharepoint,Angular,Rest,Sharepoint,我创建了一个sharepoint online加载项,其中包含一个列表(LearningsList),我希望从嵌入式应用程序访问该列表 列出列表的内容可以很好地工作,但是当尝试向列表中添加项目时,我会遇到403禁止访问错误 我已经尝试连接到contextinfo并检索最新的FormDigestValue(返回很好),但是这仍然不起作用 我能看到的唯一问题是FormsDigestValue日期/时间总是比我的本地时间晚一小时。这可能是问题所在吗 我有管理员权限,可以手动添加项目罚款 var r
var restUrl = '/SharePointAddIn3/_api/contextinfo';
let headers2 = new HttpHeaders(
{
'Accept':'application/json;odata=verbose'
}
);
return this.http.post(restUrl,{}, headers2)
.subscribe(
res => {
console.log(res);
console.log("Started onSubmitSP: digest result=" + res.FormDigestValue);
var restUrl = '/SharePointAddIn3/_api/lists/LearningsList/items';
var digest = res.FormDigestValue;
console.log("Started onSubmitSP: digest:" + digest);
return this.http.post(restUrl,
JSON.stringify(
{ '__metadata': { 'type': 'SP.Data.ListFieldsContentType' }, 'Title': 'Test'}
),
{
'X-RequestDigest' : digest,
'accept':"application/json;odata=verbose",
'content-type':"application/json;odata=verbose"
})
.subscribe(
res => {
console.log(res);
console.log("Success!!! added the record:");
this.submitted = true;
},
err => {
console.log("Error occured saving:");
console.log(err);
}
);
},
err => {
console.log("Error occured");
}
)
}
似乎问题在于我提供标题的方式。它们应该标记为标题,如下所示:
{
headers {
'X-RequestDigest' : digest,
'accept':"application/json;odata=verbose",
'content-type':"application/json;odata=verbose"
}
}
与此相反:
{
'X-RequestDigest' : digest,
'accept':"application/json;odata=verbose",
'content-type':"application/json;odata=verbose"
}