2016-03-21 27 views
0

私はjavaのHTTP getリクエストをポート番号4567のlocalhostに使用しようとしています。 getリクエストを受け取りました: "wget -q -O- http://localhost:4567/XXXX" [XXXXはいくつかのパラメータです - 関連性がない。 私はこれらの種類のJavaライブラリjava.net.URLConnectionを見つけましたが、URLConnectionオブジェクトはurl/port/..と他のすべての種類のパラメータを受け取っているようです(言い換えれば、しかし、私は上記で書いたように完全なhttpリクエストを得ています。 URLConnectionのフィールドを構築することなく簡単にリクエストを撃つ方法はありますか?JavaでHTTP GETリクエスト

答えて

2

URLを使用してURLオブジェクトを作成すると、ポートやその他のものを把握できます。 Ref:https://docs.oracle.com/javase/tutorial/networking/urls/readingWriting.html

public class URLConnectionReader { 
    public static void main(String[] args) throws Exception { 
     URL oracle = new URL("http://localhost:4567/XXXX"); 
     URLConnection yc = oracle.openConnection(); 
     BufferedReader in = new BufferedReader(new InputStreamReader(
            yc.getInputStream())); 
     String inputLine; 
     while ((inputLine = in.readLine()) != null) 
      System.out.println(inputLine); 
     in.close(); 
    } 
} 
+0

だから、基本的に、私はHTTPでGETリクエストを使用していたとき:// localhostを:4567/XXXX、それはHTTPにサーフィンと同じです:// localhostを:4567/XXXXとそこに何があるの? – Jayn

+0

はい、ブラウザーでリンクを開くと、ブラウザーはいくつかのランダムなポート(つまりlocalhost:54820)にソケットを作成し、このソケットをlocalhostで実行されているサーバーソケットに接続します。 4567。ローカルソケットを使用してサーバーからコンテンツをダウンロードし、それが認識できるものであれば、レンダリングする前にいくつかの処理を行います。 (HTMLやXMLのように)。これはURLConnectionまたはWGEtでも同じですが、ローカルソケットを作成しますが、httpクライアントだけなので、何も追加しません。 – 11thdimension

+0

ありがとうございます – Jayn

関連する問題