HTTP/1.1 でのチャンクデコード
- 題名: HTTP/1.1 でのチャンクデコード
- 著者: karasuma
- 日時: 2011/01/16 13:07:23
- ID: 28019
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: HTTP/1.1 でのチャンクデコード
- 著者: 魔界の仮面弁士
- 日時: 2011/01/16 14:07:48
- ID: 28020
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: HTTP/1.1 でのチャンクデコード
- 著者: karasuma
- 日時: 2011/01/16 18:18:49
- ID: 28022
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[3]: HTTP/1.1 でのチャンクデコード
- 著者: karasuma
- 日時: 2011/01/28 23:01:12
- ID: 28084
- この記事の返信元:
- この記事への返信:
- ツリーを表示
分類:[.NET]
【解決したい問題】
いつも大変重宝して利用させて頂いてます。
Visual Basic 2008 にて、TcpListenerクラスを使用して、下記を参考に
Webサーバへの接続を行うブラウザのようなものを作成しています。
→http://dobon.net/vb/dotnet/internet/tcpclientserver.html
こちらについて、HTML/1.0 の接続は全く問題なく行えるのですが
HTTP/1.1 での接続となると、接続するWebサーバによっては、
[Transfer-Encoding: chunked]が強制付加されてしまいます。(解除不可)
その結果、受信自体は行えるのですが、受信すべき文字列以外の情報
(チャンク制御用文字列等)が文字列に代入されてしまいます。
これは、Socketを使う方法でも同様でした。
→http://dobon.net/vb/dotnet/internet/downloadusesocket.html
素直に、WebRequest、WebResponseクラスを使用して受信すれば
チャンクデータが自動でデコードされるのですが、
こちらのクラスは若干IEに依存するような気がしており、できれば、
TcpListenerか、Socketクラスを用いつつうまくチャンクデータがデコード
(チャンク制御用の文字列を削除して本来の受信文字列に戻す)
のですが、何かお手軽な方法があれば教えてください
【解決するために何をしたか】
Perlで記載されたチャンクデータをデコードするコードを見つけたのですが
なんとか移植できないかがんばってます・・
→http://www.kasai.fm/perlHTTP/decode.html
HTTP応答については下記を参照しています
→http://www.tohoho-web.com/ex/http.htm
よろしくお願いします <m(__)m>