Office365 在onedrive业务帐户中使用MSGraph上载文件时出错

Office365 在onedrive业务帐户中使用MSGraph上载文件时出错,office365,microsoft-graph-api,onedrive,Office365,Microsoft Graph Api,Onedrive,我使用MicrosoftGraph创建一个web应用程序,将文件上载到OneDrive。 文件上载使用上载会话。 如果上载目标帐户是业务帐户,则上载文件失败。 发生的错误是 {“error”:{“innerror”:{“code”:“invalidToken”},“code”:“unauthenticated”,“message”:“此访问令牌在此端点上无效。”}} 但是,如果上载目的地是个人帐户,则会成功 顺便说一句,简单的上传将成功地在商业和个人。 你知道有什么办法吗 以下是上载过程。 (

我使用MicrosoftGraph创建一个web应用程序,将文件上载到OneDrive。 文件上载使用上载会话。

如果上载目标帐户是业务帐户,则上载文件失败。 发生的错误是
{“error”:{“innerror”:{“code”:“invalidToken”},“code”:“unauthenticated”,“message”:“此访问令牌在此端点上无效。”}}

但是,如果上载目的地是个人帐户,则会成功 顺便说一句,简单的上传将成功地在商业和个人。 你知道有什么办法吗

以下是上载过程。
(一)

(2) 回应

(三) 将字节上载到上载会话

PUT https://our-tenant-my.sharepoint.com/personal/our_tenant_onmicrosoft_com/_api/v2.0/drive/items/aaaa/uploadSession?guid='example'&path='example'&overwrite=False&rename=True&dc=0&tempauth=example
(4) 返回错误

HTTP/1.1 401
{"error":{"innerError":{"code":"invalidToken"},"code":"unauthenticated","message":"This access token is not valid on this endpoint."}}
顺便说一下,如果是个人帐户,则响应的上传URL为

https://api.onedrive.com/rup/example/more~~~
我会回来的。
我可以用这个路径上传。 UploadUrl在个人帐户和业务帐户中不同,这与此错误有关吗?
有办法解决这个问题吗?

当使用PUT时,不要发送令牌,因为那里不接受令牌

在发出PUT调用时包括授权标头可能会导致HTTP 401未经授权的响应

授权头和承载令牌只应在第一步发布POST时发送。在发行看跌期权时,不应将其包括在内


这个问题已经解决了。 原因是web应用程序的HTTP客户端重新排列了URL的查询参数。
我使用了Ruby on Rails的faraday,所以我改变了这一点。

当我使用PUT时,我没有发送令牌。错误是未经验证的,而不是未经授权的。
HTTP/1.1 401
{"error":{"innerError":{"code":"invalidToken"},"code":"unauthenticated","message":"This access token is not valid on this endpoint."}}
https://api.onedrive.com/rup/example/more~~~