1
我需要從http webrequest中刪除最後一個換行以便與json-rpc服務進行通信。 .net生成的請求看起來像這樣。從c#web請求的頭部中刪除換行
POST http://localhost.:8332/ HTTP/1.1
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; MS Web Services Client Protocol 4.0.30319.1)
Authorization: Basic dGlwa2c6dGlwa2c=
Host: localhost.:8332
Content-Length: 42
Expect: 100-continue
Connection: Keep-Alive
{"id":1,"method":"getinfo","params":[]}
我需要將這個(通知後,最後報頭值丟失換行符和JSON內容的開始):
POST http://localhost.:8332/ HTTP/1.1
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; MS Web Services Client Protocol 4.0.30319.1)
Authorization: Basic dGlwa2c6dGlwa2c=
Host: localhost.:8332
Content-Length: 42
Expect: 100-continue
Connection: Keep-Alive
{"id":1,"method":"getinfo","params":[]}
我無法找到任何東西,我可以操縱這是實際發送到服務的標題。
見http://www.bitcoin.org/smf/index.php?topic=2170.0有關該問題的更多背景...
如果服務需要像第二個示例那樣的請求,那麼它不是有效的HTTP。 HTTP需要一個空白行將標題與正文分開(如果有的話)。 – 2010-12-09 18:57:55
您是否測試過這個版本並驗證過它沒有換行符?要測試這個,你可以使用telnet(運行telnet主機名80,然後在文本編輯器的請求之後)。我從來沒有聽說過關心\ r \ n或\ n的網絡服務器,所以希望這沒有任何區別。如果確實如此,您可以使用NetworkStream類來仔細考慮您發送的字符。 – 2010-12-10 02:50:16