我正在尝试通过向 url 发出 web 请求来获取请求身份验证令牌。api 需要用户名/密码作为form-data
有效负载中的凭据。
当我单击浏览器上的登录选项时,网络日志显示一个GET
请求HTML
作为响应,然后是一个POST
请求,该请求返回带有用户名/密码的表单数据和有效负载中的请求令牌。
尝试使用 模拟流程webrequest,我正在执行一个简单的post请求,如下所示:
public string HttpPost(string url, string post, string refer = "")
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
// request.CookieContainer = cJar;
request.UserAgent = UserAgent;
request.KeepAlive = false;
request.Method = "POST";
request.Referer = refer;
byte[] postBytes = Encoding.ASCII.GetBytes(post);
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = postBytes.Length;
Stream requestStream = request.GetRequestStream();
requestStream.Write(postBytes, 0, postBytes.Length);
requestStream.Close();
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader sr = new StreamReader(response.GetResponseStream());
return sr.ReadToEnd();
}
但是,此请求仅像浏览器请求的第一部分一样返回页面的文本/HTML 标记。如何让它运行后续POST以从端点获取令牌?
慕神8447489
相关分类