Java での HTTP URL アドレス エンコーディング
URL と対話する Java スタンドアロン アプリケーションを操作する場合、URL を適切にエンコードして処理することが重要です。スペース文字やその他の潜在的な問題。 Java には、このプロセスを容易にするさまざまなメソッドが用意されています。 1 つのオプションは、HTML フォームのエンコード用に設計された java.net.URLEncoder クラスを利用することです。ただし、これは HTTP URL エンコードに常に適しているとは限りません。
別のアプローチは、エンコード プロセスをより詳細に制御できる java.net.URI クラスを利用することです。 HTTP URL アドレスを正しくエンコードするには、複数の引数を使用して URI のインスタンスを作成します。
URI uri = new URI( "http", "search.barnesandnoble.com", "/booksearch/first book.pdf", null);
結果の URI ではスペースが " " 文字に置き換えられ、URL アドレスが効果的にエンコードされます。このメソッドは不正な文字をエスケープするだけであり、非 ASCII 文字はエンコードしないことに注意してください。これに対処するには、toASCIIString メソッドを使用します。
String request = uri.toASCIIString();
これにより、URI が US-ASCII 文字のみを含む文字列に変換され、HTTP プロトコルとの互換性が確保されます。
クエリを含む URL の場合https://www.example.com/path?param=value など、URI の 5 つのパラメーターのコンストラクターを使用できます。 class:
URI uri = new URI( "https", "www.example.com", "/path", "param=value", null);
クエリ文字列にエンコードする必要がある文字が含まれている場合は、必ず toASCIIString メソッドを使用してください。これらのメソッドを利用することで、HTTP URL アドレスを Java で効果的にエンコードし、アプリケーションでの適切な動作を保証できます。
以上がJava で HTTP URL アドレスを適切にエンコードするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。