0
我想使用谷歌API创建gmail用户帐户。我送JSON请求到服务器获取授权码,但我得到了httpwebresponse这些错误: -Json POST请求到服务器但服务器响应(400)错误请求
异常详细信息:System.Net.WebException:远程服务器返回错误:(400)错误的请求
var request = (HttpWebRequest)WebRequest.Create(@"https://accounts.google.com/o/oauth2/auth");
request.Method = "POST";
request.ContentType = "text/json";
request.KeepAlive = false;
//request.ContentLength = 0;
using (StreamWriter streamWriter = new StreamWriter(request.GetRequestStream()))
{
string json = "{\"scope\":\"https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile\"," + "\"state\":\"%2Fprofile\"," + "\"redirect_uri\":\"http://gmailcheck.com/response.aspx\"," + "\"response_type\":\"code\"," + "\"client_id\":\"841994137170.apps.googleusercontent.com\"}";
streamWriter.Write(json);
// streamWriter.Flush();
//streamWriter.Close();
}
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
StreamReader responsereader = new StreamReader(response.GetResponseStream());
var responsedata = responsereader.ReadToEnd();
//Session["responseinfo"] = responsereader;
//testdiv.InnerHtml = responsedata;
}
}
非常感谢你。 .net不允许优雅地处理抛出异常的http错误响应insead。 – Fer
这就是我所需要的;但是有没有办法捕获400/404状态码(一些JSON/REST在主体中使用有效的JSON发送这些代码)。我必须解析异常吗? – NealWalters