使用createLink与特定用户共享

时间:2017-11-01 14:09:01

标签: microsoft-graph onedrive

我正在尝试为特定用户createLink创建一个与Microsoft Graph without using an invite共享文档的链接,但它正在创建一个具有Anyone with the link can edit this document权限的链接。

我正在呼唤这个终点:

POST /me/drive/items/{itemId}/createLink    

使用此请求正文:

{
  "type": "edit",
  "scope": "anonymous"
}

我错过了什么吗?

2 个答案:

答案 0 :(得分:3)

您无法使用createLink与特定人员共享,您需要使用invite端点。

您正在进行的通话正好回应您的要求并生成任何人(createLink)都可以访问的链接(anonymous)。

如果您不想发送实体邀请,可以通过将sendInvitation属性设置为false告诉OneDrive:

POST /me/drive/items/{item-id}/invite
Content-type: application/json

{
  "requireSignIn": true,
  "sendInvitation": false,
  "roles": [ "write", "read"],
  "recipients": [
    {
      "email": "someone@contoso.org"
    }
  ]
}

答案 1 :(得分:0)

请参阅此链接https://docs.microsoft.com/en-us/onedrive/developer/rest-api/api/driveitem_invite 您可以通过添加用户来与特定用户共享该文件 “收件人”:[{ “@ odata.type”: “microsoft.graph.driveRecipient”}] 参数。您可以将sendInvitation参数设置为“sendInvitation”:false以避免发送邀请邮件。