OneDrive SDK:如何使用单租户应用访问 OneDrive 文件?



AADSTS50194: Application 'censured'(-app) is not configured as a multi-tenant application. Usage of the /common endpoint is not supported for such applications created after '10/15/2018'. Use a tenant-specific endpoint or configure the application to be multi-tenant.

如何使用单租户特定的终结点?我想创建一个允许用户浏览其文件和组织文件的文件选取器。我已经读过这个问题,但是,如果不编辑OneDrive.js(库(,我无法更改

https://login.microsoftonline.com/common

https://login.microsoftonline.com/MY_TENANT_NAME

希望你能帮助我,谢谢。

由于 OneDrive.js 库具有硬编码的公共终结点,因此最简单的方法是将其更改为指向租户登录终结点。

如果不想这样做,请在使用选取器之前让用户登录,然后保存访问令牌和终结点并将其提供给 JS。 类似于这里所做的:https://github.com/OneDrive/onedrive-explorer-js/blob/master/index.html

根据 https://learn.microsoft.com/en-us/onedrive/developer/controls/file-pickers/js-v72/open-file?view=odsp-graph-online#advanced-options 选取器的高级选项提供了指定终结点提示和访问令牌的选项。

希望有帮助,

更新我只是以这种方式尝试过,它似乎有效。 但我没有尝试用令牌来做。 只是一个端点提示,当我使用端点提示时,它没有给我有关多租户问题的错误。

<html>
<head>
<script type="text/javascript" src="https://js.live.net/v7.2/OneDrive.js"></script>
<script type="text/javascript">
function launchOneDrivePicker(){
var odOptions = {   
clientId: "myappid-guid-thing",
action: "query",
multiSelect: true,
advanced: {endpointHint: "https://azuretenant-my.sharepoint.com/",},
};
OneDrive.open(odOptions);
}
</script>
</head>
<body>
<button onClick="launchOneDrivePicker()">Open from OneDrive</button>
</body>
</html>

请确保终结点 URL 正确,例如,https://tenantname-my.sharepoint.com 注意租户名称后的"-my",这是必要的。

最新更新