C# 尝试使用C从Google检索令牌的错误请求#
我试图复制这里详述的过程 在C中# 问题是调用GetResponse()时,我收到了错误的请求 ConsumerKey&Secret是我注册应用程序时从谷歌得到的。授权代码也来自谷歌 你知道我做错了什么吗 提前谢谢。我也有同样的问题: “使用”关键字为我解决了这个问题。请点击链接:C# 尝试使用C从Google检索令牌的错误请求#,c#,oauth,C#,Oauth,我试图复制这里详述的过程 在C中# 问题是调用GetResponse()时,我收到了错误的请求 ConsumerKey&Secret是我注册应用程序时从谷歌得到的。授权代码也来自谷歌 你知道我做错了什么吗 提前谢谢。我也有同样的问题: “使用”关键字为我解决了这个问题。请点击链接: 您能使用Fiddler之类的工具捕获它实际发送的原始请求并将其粘贴到此处吗?还有,Paul,您第二次收到的确切错误消息是什么,调试代码时抛出的错误是哪一行。。? String authorizatio
您能使用Fiddler之类的工具捕获它实际发送的原始请求并将其粘贴到此处吗?还有,Paul,您第二次收到的确切错误消息是什么,调试代码时抛出的错误是哪一行。。?
String authorizationCode = String.Empty;
String consumerKey = String.Empty;
String consumerSecret = String.Empty;
String redirectUrl = String.Empty;
String grantType = String.Empty;
String requestContent = String.Empty;
HttpWebRequest request = null;
byte[] byteArray = null;
Stream dataStream = null;
WebResponse response = null;
StreamReader reader = null;
String serverResponse = String.Empty;
byte[] authorizationResult = null;
try
{
authorizationCode = HttpUtility.UrlEncode(context.Request.QueryString["code"]);
consumerKey = Properties.Settings.Default.GoogleConsumerKey;
consumerSecret = Properties.Settings.Default.GoogleConsumerSecret;
redirectUrl = Properties.Settings.Default.RedirectUrl;
grantType = "authorization_code";
request = (HttpWebRequest)WebRequest.Create("https://accounts.google.com/o/oauth2/token");
request.Method = "POST";
requestContent = String.Format("code={0}&client_id={1}&client_secret={2}&redirect_url={3}&grant_type={4}",authorizationCode,consumerKey,consumerSecret,redirectUrl,grantType);
byteArray = Encoding.UTF8.GetBytes(requestContent);
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = byteArray.Length;
dataStream = request.GetRequestStream();
dataStream.Write(byteArray, 0, byteArray.Length);
dataStream.Close();
response = request.GetResponse();
dataStream = response.GetResponseStream();
reader = new StreamReader(dataStream);
serverResponse = HttpUtility.UrlDecode(reader.ReadToEnd());
reader.Close();
dataStream.Close();
response.Close();
}
catch (System.Exception ex)
{
throw ex;
}
finally
{
}