注销用户 OneDrive API

我想在 OneDrive API 中注销用户,我尝试了这个,我发送了请求:


var client = new RestClient("https://login.live.com/oauth20_logout.srf?client_id=762d0c10-xxxx-xxxx-xxxx-085a4a1743bc&redirect_uri=urn:ietf:wg:oauth:2.0:oob");

var request = new RestRequest(Method.GET);

request.AddHeader("Content-Type", "application/x-www-form-urlencoded");

IRestResponse response = client.Execute(request);

Console.WriteLine((int)response.StatusCode);

Console.WriteLine(response.IsSuccessful);

输出:


302

False

我的问题是如何发送注销请求


森栏
浏览 110回答 2
2回答

开心每一天1111

OAuth 本质上是无状态的,因此实际上没有什么可以“注销”的。当您完成 OAuth 流程后,您会收到一个令牌。该令牌用于在每次调用 API 时对用户进行身份验证。如果您未在授权标头中包含令牌,API 将拒绝您的请求。因此,要“注销”,只需从应用程序的内存/存储中擦除任何存储的访问令牌值,该应用程序将不再有权访问该用户的帐户。

梦里花落0921

恐怕您在执行请求之前没有遵守规则:删除您之前从 OAuth 流程收到的任何缓存的 access_token 或 refresh_token 值。在应用程序中执行任何注销操作(例如,清理本地状态、删除任何缓存的项目等)。只有在此之后,您才能使用以下 url 调用授权 Web 服务:https://login.microsoftonline.com/common/oauth2/v2.0/logout?post_logout_redirect_uri={redirect-uri}删除 cookie 后,浏览器将重定向到您提供的重定向 URL。当浏览器加载您的重定向页面时,不会设置任何身份验证查询字符串参数,您可以推断用户已注销。
打开App,查看更多内容
随时随地看视频慕课网APP