【问题标题】:Create list item via REST API on Sharepoint online Team site在 Sharepoint 在线团队网站上通过 REST API 创建列表项
【发布时间】:2019-05-12 06:38:09
【问题描述】:

我正在尝试使用 REST API 在 Sharepoint 上创建列表项。当我在根站点或根/子站点上创建项目时 - 一切都很棒。但是,如果我尝试使用 root/teams/msteams_cc6dfd/ 之类的 URL 在 Team-site 上创建列表项,则会出现错误:

'<m:error xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"> <m:code>-2130575251, System.Runtime.InteropServices.COMException</m:code> <m:message xml:lang="en-US">The security validation for this page is invalid. Click Back in your Web browser, refresh the page, and try your operation again.</m:message> </m:error>'

有趣的是,该站点上的 GET 工作正常,但 POST 没有。

附:对不起,我的英语太疯狂了。

【问题讨论】:

    标签: sharepoint-online teamsite sharepoint-rest-api


    【解决方案1】:

    POST 请求需要 X-RequestDigest 标头存在于您的请求中。您可以从当前页面或/_api/web/contextinfo 端点获取它。
    使用此链接作为示例:https://docs.microsoft.com/en-us/sharepoint/dev/sp-add-ins/complete-basic-operations-using-sharepoint-rest-endpoints#writing-data-by-using-the-rest-interface
    从页面获取:"X-RequestDigest": $("#__REQUESTDIGEST").val()
    要从 contextinfo 中获取它,请创建对此端点的 GET 请求并提取 FormDigestValue 参数值。
    我想它会解决你的问题。

    更新:

    可能是权限问题。 请检查此网站的帐户权限。如果您使用 X-RequestDigest 正确完成了所有操作,那么它可能只是权限问题。此帐户是否具有调用 API 所需的权限?此帐户是否有权在您的列表所需的此站点中创建列表项?
    尝试将帐户添加到网站集管理员。它在工作吗?您的列表是否具有独特的权限?可能是帐户在站点上具有贡献角色但无权访问特定列表,因为存在唯一权限。
    您可以不从 1C 而是从其他方式创建列表项吗? PowerShell 脚本、控制台应用程序 C#、来自 SharePoint 网站上的一些 JavaScript?如果它工作正常,则发出 1C 代码。

    【讨论】:

    • 好的。但是在“tenant.sharepoint.com/test”上 POST 工作正常,没有“X-RequestDigest”,但在“tenant.sharepoint.com/teams/test”或“tenant.sharepoint.com/sites/test”上它不起作用?
    • 我不知道。这只是建议。上次看到这个错误是因为我没有使用 X-RequestDigest。你试过这个吗?有效吗?
    • ОК。我们会试试的。现在我们正在创建 1C 和 Sharepoint 之间的集成;)。我已将您的链接发送给 1c-developer。
    • 1c-developer 很伤心,他使用了X-RequestDigest,它在 /sites 和 /teams 上不起作用
    • 请检查此网站的帐户权限。如果您使用 X-RequestDigest 正确完成了所有操作,那么它可能只是权限问题。此帐户是否具有调用 API 所需的权限?此帐户是否有权在您的列表所需的此站点中创建列表项?
    猜你喜欢
    • 1970-01-01
    • 2016-09-03
    • 2014-10-26
    • 2011-04-17
    • 2022-11-10
    • 2015-10-23
    • 1970-01-01
    • 2016-12-21
    • 1970-01-01
    相关资源
    最近更新 更多