1. 程式人生 > >利用WebClient 模擬Form Post請求上傳檔案

利用WebClient 模擬Form Post請求上傳檔案

一.準備工作
1.開啟開發工具F12,檢視NetWork,首先先觀察目標網站上的請求頭
在這裡插入圖片描述
我們需要在程式碼中新增這些請求頭內容,比較重要的是Content-TypeUser-Agent,當然可以全部新增;
其中Content-Type 的 boundary(自己隨機生成,或者用web端請求生成的)是為了分割資料用的,需要注意的是 "----"的數量 。
2.檢視Form表單中的內容
圖1
在這裡插入圖片描述
需要按照上面字元排列的順序(包括了換行符),進行構造字串,利用boundary分割不同的資料。

二.寫程式碼
1.利用C# 封裝的WebClient

其中需要注意的是:
①一定要看清 Content-Type 中boundary 前面有幾個“

”;(我因為這個原因,伺服器返回403
②Form表單資料構造一定要與頁面發起的請求一致,分割線也是一樣的。
③Form表單資料要轉成位元組流
程式碼參考C#使用WebClient上傳檔案並同時Post表單資料欄位到服務端