Microsoft Graph API:个人帐户的{microsoft.graph.downloadUrl行为

时间:2016-11-16 02:18:44

标签: onedrive microsoft-graph

使用商家帐户时,DriveItem的@microsoft.graph.downloadUrl property就像

https://mycompany.sharepoint.com/personal/company_onmicrosoft_com/_layouts/15/download.aspx?guestaccesstoken=qSklOMSL1z7jxyzfOP2GzK7tRltRKID4MwS410%4xyzEw%3d&docid=99fgd92d528624b41b1329bfa1a25d0b3&expiration=2016-11-16T02%3a59%3a57.000Z&userid=3&authurl=True&NeverAuth=True

如果我将此网址放入浏览器,我会收到该文件(使用正确的名称和扩展名。例如 myimage.png )。一切都很好。

使用个人帐户时,DriveItem的@ microsoft.graph.downloadUrl属性就像

https://public-bn1306.files.1drv.com/z1mKhEKmWDB2Yp1BCG21GcBwx5vPRHkP7adGcIE3GIdipHvNJdGIhjq8leiZVSwSfCH1L--otP_KHx5FopV8TUs8GJJm0X8Ag1Rh504tnJP1mxuGoM-LNCFkGGZl01qZzsTr99xBTDDgwIKaZs21UYV4L_-d8EmSktRG1i-r57ERhRuknnJRGeX_MOlBT3VPzd

如果我把这个网址在浏览器中,我得到的名称的文件 z1mKhEKmWDB2Yp1BCG21GcBwx5vPRHkP7adGcIE3GIdipHvNJdGIhjq8leiZVSwSfCH1L - otP_KHx5FopV8TUs8GJJm0X8Ag1Rh504tnJP1mxuGoM-LNCFkGGZl01qZzsTr99xBTDDgwIKaZs21UYV4L_-d8EmSktRG1i-r57ERhRuknnJRGeX_MOlBT3VPzd 并没有扩展名

这不行。 如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

浏览器在下载时将URL的最后一段作为建议的名称(如果没有处置标题),那么要解决此问题,您可以获取name项的值和将其作为新路段添加到URL的路径中。所以在你的例子中:

https://public-bn1306.files.1drv.com/z1*snip*zd/filename.txt

编辑:我应该补充一点,这显然不理想,我们一定会考虑让消费者服务的行为与商业服务的行为相匹配。