https://www.cnblogs.com/jiangchengbiao/p/9982788.html
瀏覽器能看到的數據 用后端模擬請求都能獲取到 如果拿不到 看看是不是請求參數哪里沒設置 剛好服務器檢查了這個參數
string url = ""; string para = ""; HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);//創建請求對象 request.Method = "Post";//請求方式 request.KeepAlive = true; request.ContentType = "application/json";//請求頭參數 byte[] bytes = System.Text.Encoding.UTF8.GetBytes(para);//設置請求參數 request.ContentLength = bytes.Length; Stream stream = request.GetRequestStream(); stream.Write(bytes, 0, bytes.Length);//寫入參數 stream.Close(); using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())//響應對象 { StreamReader reader = new StreamReader(response.GetResponseStream()); string str = reader.ReadToEnd();//獲取返回的頁面信息 //根據返回的格式 創建一個對象 把Json反序列化成對應的類型對象 //反序列化的時候需要先創建一個模型來存放數據 Dto dto = JsonConvert.DeserializeObject<Dto>(str); }
設置請求頭參數
1
2
3
4
5
6
7
8
9
10
11
|
request.Headers.Add(
"Accept"
,
"*/*"
);
request.Headers.Add(
"Accept-Encoding"
,
"gzip, deflate, sdch"
);
request.Headers.Add(
"Accept-Language"
,
"zh-CN,zh;q=0.9"
);
request.KeepAlive =
true
;
// request.Connection = "keep-alive";
// request.Headers.Add("Cookie", "");
request.Host =
"sshhbhaokn.jin10.com:8083"
;
request.Headers.Add(
"Referer"
,
"https://hero.jin10.com/"
);
request.UserAgent =
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36"
;
|
在f12的元素上 右鍵 copy Xpath 可以拷貝出當前元素的位置
/*************************
獲取token請求
1. 用上面那種把參數先轉成字節才寫入會報錯
2.設置請求頭長度也會報錯