-1

C#APIのWebClientを介してPOSTリクエストを送信する際に問題が発生しました。POSTリクエストは次のとおりです。

POST http://aaa.com/login.php HTTP/1.1
Host: www.aaa.com
Connection: keep-alive
Content-Length: 346
Cache-Control: max-age=0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Origin: http://www.aaa.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.152 Safari/537.22
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryK0J3zdRYpjgldAFy
Referer: http://www.turbotrafficbooster.com/
Accept-Encoding: gzip,deflate,sdch
Accept-Language: bg-BG,bg;q=0.8
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.3
Cookie: PHPSESSID=b703525853495c9257b3f3ec579c937a

------WebKitFormBoundaryK0J3zdRYpjgldAFy
Content-Disposition: form-data; name="navaction"

login
------WebKitFormBoundaryK0J3zdRYpjgldAFy
Content-Disposition: form-data; name="UserID"

test
------WebKitFormBoundaryK0J3zdRYpjgldAFy
Content-Disposition: form-data; name="Password"

test
------WebKitFormBoundaryK0J3zdRYpjgldAFy--

user-agentなどのヘッダーをどうするかは知っていますが、境界に問題があります。どうやって置くのか、どこに置くのかわかりません。

4

1 に答える 1

0

この回答と、リンクされた仕様の例をここで参照してください。例:

  Content-Type: multipart/form-data; boundary=AaB03x

  --AaB03x   
  Content-Disposition: form-data; name="submit-name"

  Larry   
  --AaB03x

WebKitFormBoundaryK0J3zdRYpjgldAFy単なる慣習です。MyFoobaredBoundry必要に応じて、適切に宣言して閉じることができます。ブラウザが異なれば使用する文字列も異なるため、受信側では何も区別されません。

しかし、これはおそらくあなたが自分でしなければならないことではありません...

于 2013-03-11T20:38:10.317 に答える