0
我想做一個登錄POST請求與JSON到這個網站 Link,並按照redirect.My當前程序工作正常,如果登錄細節是錯誤的。如果細節錯誤,我會得到'(401)未經授權「。消息,這意味着Post請求已成功。 但是,我的問題是,如果登錄詳細信息是正確的,我會收到'(400)錯誤請求'。我不知道爲什麼會發生這種情況,而我目前仍然堅持這一點。 這裏是我的代碼,我希望有人能幫助我:C#Json發送請求重定向
static string url = "https://auth.riotgames.com/authz/auth";
static string uriString = "";
static void Main(string[] args)
{
var request_check = (HttpWebRequest)HttpWebRequest.Create("https://auth.riotgames.com/authz/auth");
request_check.Host = "auth.riotgames.com";
request_check.UserAgent = "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:47.0) Gecko/20100101 Firefox/47.0";
request_check.Accept = "application/json, text/javascript, */*; q=0.01";
request_check.Headers.Add("Accept-Language", "en-US,en;q=0.5");
request_check.Headers.Add("Accept-Encoding", "gzip, deflate, br");
request_check.ContentType = "application/json";
request_check.Headers.Add("X-Requested-With", "XMLHttpRequest");
request_check.Referer = "https://auth.riotgames.com/authorize?response_type=code&scope=openid%20email&client_id=merch-store-client&ui_locales=de-DE&login_hint=euw&redirect_uri=https://euw.merch.riotgames.com/de/riot_sso/auth/redirect/";
var cookieContainer = new CookieContainer();
request_check.CookieContainer = cookieContainer;
request_check.Method = "POST";
request_check.KeepAlive = true;
request_check.AllowAutoRedirect = false;
// Account details Senturia:a12365478
using (var streamWriter = new StreamWriter(request_check.GetRequestStream()))
{
string json = "{\"username\":\"Senturia\",\"password\":\"a12365478\",\"remember\":false,\"region\":\"EUW1\",\"language\":\"de_DE\",\"lang\":\"de_DE\"}";
streamWriter.Write(json);
}
try
{
// Get the response ...
using (var webResponse = (HttpWebResponse)request_check.GetResponse())
{
// Now look to see if it's a redirect
if ((int)webResponse.StatusCode >= 300 && (int)webResponse.StatusCode <= 399)
{
uriString = webResponse.Headers["Location"];
Console.WriteLine("Redirect to " + uriString ?? "NULL");
}
}
}
catch(Exception e)
{
Console.WriteLine(e.Message);
}
Console.ReadKey();
}
謝謝你的提示!這真的很有用! – Catalin