使用c#桌面应用程序,Instagram oAuth登录失败,出现403 Forbidden error
本文关键字:出现 失败 error Forbidden 登录 oAuth 桌面 应用程序 Instagram 使用 | 更新日期: 2023-09-27 18:11:45
我正在开发我的Instagram桌面应用程序,由于403 Forbidden error,我无法授权用户。
我被困在从登录post请求获得响应。我的POST-string看起来像这样:
csrfmiddlewaretoken=98d25eec9c3d1a6935e5a491ff2fa543&username=myname&password=mypassword
,这就是我的请求:
Uri url = new Uri
("https://instagram.com/accounts/login/?next=/oauth/authorize/?client_id=" +
instagramClient_id + "&redirect_uri=" + instagramRedirectUrl +
"&response_type=token");
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.CookieContainer = cc;
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.KeepAlive = true;
byte[] sentData = Encoding.UTF8.GetBytes(data);
request.ContentLength = sentData.Length;
using (Stream requestStream = request.GetRequestStream())
{
requestStream.Write(sentData, 0, sentData.Length);
}
WebResponse response = request.GetResponse();
结果为- 403 Forbidden。我不知道我做错了什么。
我不得不提到这样一个事实,我已经测试了一些其他的方式来完成授权,并注意到Google Chrome在使用Instagram时接收到比c#更多的cookie请求。到目前为止,我的桌面应用程序没有收到"sessionid","__qca","__utma","__utmb","__utmc","__utmz","ccode"answers"user_segment"cookie。但是它接收"csrftoken"answers"mid"cookie。也许这就是为什么我总是有403错误?
添加Referer
标头和请求URL的值