-1

Web サーバーから html/javascript ドキュメントを読み取って実行するツールに取り組んでいます。RFC2817Socket を使用し (プロキシ経由で接続しているため)、writeUTFBytes を使用してリクエストを送信し、HTMLLoader (loadString) でページを表示します。ここまでは順調ですね。私の質問ですが、ユーザー エージェントを偽装する方法はありますか? そのため、プロキシ経由で Web サーバーに接続してリクエストを送信しても、ユーザー エージェントを好きなように変更できるようにしたいと考えています。

_proxy.writeUTFBytes('GET /test.php HTTP/1.1\r\n');
_proxy.writeUTFBytes('Host: xx.xx.xx.xx:xx\r\n');
_proxy.writeUTFBytes('Connection: Keep-alive\r\n\r\n');
_proxy.flush();

私が呼び出すページは、IP、リファラー、ユーザーエージェントなどの一連の情報を返すphpスクリプトです...しかし、ユーザーエージェントは定義されていません:

echo 'user agent:'.$_SERVER['HTTP_USER_AGENT'];
echo 'ip:'.getenv('HTTP_X_FORWARDED_FOR');

しかし、正しいIPアドレス(プロキシの)を返します

ip:xxx.xxx.xxx.xxx
user agent:
4

1 に答える 1

3

リクエスト ヘッダーに「User-Agent:」フィールドを追加します。

_proxy.writeUTFBytes('GET /test.php HTTP/1.1\r\n');
_proxy.writeUTFBytes('User-Agent: Mozilla/5.0\r\n');
_proxy.writeUTFBytes('Host: xx.xx.xx.xx:xx\r\n');
_proxy.writeUTFBytes('Connection: Keep-alive\r\n\r\n');
于 2012-07-26T01:51:16.847 に答える