繁体   English   中英

远程服务器返回错误:(400)错误请求。

[英]The remote server returned an error: (400) Bad Request.

我正试图通过Web应用程序从内部进行facebook打开图形api调用。我正在使用这样的C#请求发出Web请求。

string token = "q2Fe0utty5gzCasPL23...";
string url = "https://graph.facebook.com/me?access_token=" + 
    HttpUtility.UrlEncode(token) +"&response_type=id";

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();

Stream receiveStream = response.GetResponseStream();
StreamReader readStream = newStreamReader(receiveStream,Encoding.UTF8);
string responseData = readStream.ReadToEnd();

_context.SaveChanges();

由于令牌中有一些特殊字符(+,/,==),我使用HttpUtility.UrlEncode(令牌)对其进行编码,但仍然会出现以下错误。

远程服务器返回错误:(400)错误请求。

我该如何解决此错误。 我通过在堆栈溢出中看到一些响应来做上述事情,但仍然得到错误。我哪里出错了?

因为令牌有一些特殊字符(+,/,==)

这听起来很奇怪......通常访问令牌包括字母,数字和管道符号。

如果您使用无效的访问令牌发出请求(不是意味着已过期,而是根本无法解码的令牌),那么您将获得400响应。

因此,请在调试工具中检查您的令牌, https://developers.facebook.com/tools/debug

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM