0

Javaのソケットを介してHTTPリクエストを送信するコードを作成しました。ここで、HTTP 要求を送信したサーバーから送信された HTTP 応答を取得したいと考えています。

4

3 に答える 3

2

あなたが何を求めているのかは完全には明らかではありません。リクエストをソケットに書き込んだと仮定すると、次に行うことは次のとおりです。

これは一連の作業であるため、独自の HTTP 要求ロジックをローリングするのではなく、Java に組み込まれており、応答のコンテンツとサーバーによって設定されたヘッダーを取得するためのメソッドが含まれているURLConnectionを使用することをお勧めします。 .

于 2009-09-02T19:29:18.567 に答える
0

Jonが言ったように、HTTP仕様を読んでください。ただし、インターネット プロトコルは一般に行指向であるため、一度に 1 行ずつ応答を読み取ることができます。最初の行は応答になります。これに続いて、ヘッダーが 1 行に 1 つずつ続きます (継続がない場合)。ヘッダーの 1 つが content-type である body がある場合、これはコンテンツが何であるかを示します。コンテンツを読みたい場合は、コンテンツが送信されるさまざまな方法を理解する必要があります。コンテンツの長さのヘッダーがある (またはない) か、コンテンツがチャンクされている可能性があります (頭のてっぺんからヘッダーを思い出せません)。もちろん、コンテンツはテキストではなくバイナリの場合もあります。

于 2009-09-02T19:24:52.130 に答える
0

うん!それは正しい!

応答は、入力ストリームによって数バイトのチャンクに明確に読み取られる必要があります...したがって、それを読み取り可能な形式に変換できます。しかし、それにも時間がかかります.... :(

于 2010-11-11T05:59:49.570 に答える