OneNote API - 401 错误

OneNote API - 401 Error

我正在关注博客 (http://blogs.msdn.com/b/onenotedev/archive/2015/06/11/and-sharepoint-makes-three.aspx) 以访问存储在 Office 365 共享点租户中的一个笔记文件。我注册了我的应用程序并能够获取令牌但是当我使用 accessToken 访问以下 URL

www.onenote.com/.../FromUrl(url='https://*****.sharepoint.com/sites/")

我总是收到 401。知道出了什么问题吗?

您的 API 请求中的身份验证 header 似乎缺少 OAuth 令牌前的 'Bearer' 前缀。这就是您收到 401-Unauthorized 响应的原因。 我们的 Github repo 有关于 O365 身份验证的代码示例,它可能是一个很好的参考资源。

我是 Microsoft OneNote 团队的 Sharad。

我们在 GitHub

中发布了一个示例(本机)应用程序

github.com/OneNoteDev/OneNoteAPISampleWinUniversal

请看文件 -

OneNoteServiceSamplesWinUniversal.Shared/OneNoteApi/O365Auth.cs

有资源Uri和重定向Uri。重定向 Uri 由您的应用程序控制,但资源 Uri 始终相同。

代码(本机应用程序):

private const string AuthContextUrl = "https://login.windows.net/Common"; 
private const string ResourceUri = "https://onenote.com"; 
// TODO: Replace the below RedirectUri with your app's RedirectUri. 
private const string RedirectUri = "https://localhost"; 

_authenticationResult = 
await AuthContext.AcquireTokenAsync(GetResourceHost(ResourceUri), ClientId, new Uri(RedirectUri), PromptBehavior.Always); 

本机应用程序 - 看看这个 blog。 网络应用程序 - 看看这个 blog 我希望这有助于解决您的问题。随时返回 fiddler trace (request/response)。