ホームページ >Java >&#&チュートリアル >Java URLConnections のカスタム ユーザー エージェントを設定するにはどうすればよいですか?
Java URLConnection のユーザー エージェントのカスタマイズ
Java の URLConnection を使用して Web ページへの接続を確立する場合、カスタム ユーザーを設定したい場合があります。エージェント。これは通常、特定の Web ブラウザの動作を模倣したり、アプリケーションを識別したりするために使用されます。ただし、デフォルト以外のユーザー エージェントを設定しようとすると、デフォルト値が追加されることがよくあります。
解決策:
以前のバージョンの Java では、カスタム ユーザーを設定します。 setRequestProperty("User-Agent", "custom_agent") を介してエージェントが最後に「Java/xx」を追加しました。この問題は Java 1.6.30 以降で解決されました。
例:
import java.net.URL; import java.net.URLConnection; public class CustomUserAgent { public static void main(String[] args) throws Exception { URL url = new URL("http://example.com"); URLConnection connection = url.openConnection(); connection.setRequestProperty("User-Agent", "Mozilla/5.0"); System.out.println(connection.getRequestProperty("User-Agent")); } }
Java 1.6.30 以降では、このコードは「Mozilla」を出力します。 /5.0" (追加された "Java/xx" なし)。
Netcat検証:
カスタム ユーザー エージェントが使用されていることを確認するには、netcat を使用してポートでリッスンできます:
$ nc -l -p 8080
上記のコードが実行されると、以下が表示されます。 netcat によって受信された HTTP ヘッダー内のカスタム ユーザー エージェント。
代替解決策:
古い Java バージョンで「Java/xx」を追加するときに依然として問題が発生する場合は、User-Agent ヘッダーを完全に制御できるサードパーティの HTTP ライブラリを使用してみてください。 .
以上がJava URLConnections のカスタム ユーザー エージェントを設定するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。