【发布时间】:2011-12-22 01:51:11
【问题描述】:
使用 2011 年 12 月 20 日发布的 Facebook C# API 版本,我使用“/{facebook id}/permissions”调用 facebook 客户端删除命令,我收到一个 400 Bad request 返回给我。我也尝试过以下变体:“{facebook id}/permissions”、“/{app id}/permissions”、“{app id}/permissions”、“/{facebook id}/permission”、“me/权限”和“/{app id}/permission”。我已经通过 C# API 成功发出了其他删除命令(例如删除评论、删除喜欢和删除提要发布)。
此文档参考说您要向 {profile id}/permissions 发出删除命令
https://developers.facebook.com/docs/reference/rest/auth.revokeAuthorization/
我已尝试通过 Graph Api Explorer (https://developers.facebook.com/tools/explorer?method=DELETE) 对删除命令使用 {facebook id}/permissions,它在那里工作。所以我很困惑为什么我只收到一个 400 错误的取消授权请求。
at FluentHttp.HttpHelper.OpenRead() in C:\temp\FBSDK-5.4.1.0.src\FacebookCSharpSDK\Source\Facebook\FluentHttp\HttpHelper.cs:line 693
at Facebook.FacebookClient.Api(String path, IDictionary`2 parameters, HttpMethod httpMethod, Type resultType) in C:\temp\FBSDK-5.4.1.0.src\FacebookCSharpSDK\Source\Facebook\FacebookClient.cs:line 458
at Facebook.HttpWebRequestWrapper.GetResponse() in C:\temp\FBSDK-5.4.1.0.src\FacebookCSharpSDK\Source\Facebook\FluentHttp\HttpHelper.cs:line 321
at FluentHttp.HttpHelper.OpenRead() in C:\temp\FBSDK-5.4.1.0.src\FacebookCSharpSDK\Source\Facebook\FluentHttp\HttpHelper.cs:line 672
https://graph.facebook.com:443/me/permissions?access_token=xxxx 是传递给 CreateHttpWebRequest() 方法的 uri。内容类型是“application/x-www-form-urlencoded”。当 _httpWebRequest.GetResponse();被调用,那是在 HttpHelper.cs 的第 680 行抛出 WebException 的时候。
“远程服务器返回错误:(400) Bad Request。”
<HTML>
<HEAD>
<TITLE>400 Bad Request</TITLE>
</HEAD>
<BODY>
<H1>Method Not Implemented</H1>
Invalid method in request<P>
</BODY>
</HTML>
这是一个奇怪的响应,因为我可以从图形 API 资源管理器运行删除权限而不会收到此错误。
【问题讨论】:
-
在 FluentHttp.HttpHelper.OpenRead() in C:\temp\FBSDK-5.4.1.0.src\FacebookCSharpSDK\Source\Facebook\FluentHttp\HttpHelper.cs:Facebook.FacebookClient.Api 的第 693 行(字符串路径,IDictionary`2 参数,HttpMethod httpMethod,Type resultType)在 C:\temp\FBSDK-5.4.1.0.src\FacebookCSharpSDK\Source\Facebook\FacebookClient.cs:line 458
-
即使尝试了我/权限,仍然得到一个错误。 graph.facebook.com:443/me/permissions?access_token=xxxx 是传递给 CreateHttpWebRequest() 方法的 uri。内容类型是“application/x-www-form-urlencoded”。当 _httpWebRequest.GetResponse();被调用,那是在 HttpHelper.cs 的 lin 680 中引发 WebException 的时候。 “远程服务器返回错误:(400) Bad Request。”
-
这是返回给 API 的 HTML。
400 Bad Request 方法未实现
请求中的方法无效跨度>
-
7 天内没有答案或帮助...因此将缺陷提交给 API 所有者。见facebooksdk.codeplex.com/workitem/5926
标签: facebook-graph-api facebook-c#-sdk authorize