ホームページ  >  記事  >  バックエンド開発  >  PHP は POST リクエストの送信をシミュレートします 3、Telnet と fsockopen() を使用して POST 情報の送信をシミュレートします、telnetfsockopen_PHP チュートリアル

PHP は POST リクエストの送信をシミュレートします 3、Telnet と fsockopen() を使用して POST 情報の送信をシミュレートします、telnetfsockopen_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-12 09:05:59905ブラウズ

PHPでPOSTリクエストの送信をシミュレートしますその3。Telnetとfsockopen()を使ってPOST情報の送信をシミュレートします

HTTPヘッダー情報とURL情報の具体的な内容を理解した後、ヘッダーを書いてみます。自分自身で情報を収集し、サーバーに送信します。 Windows の組み込みコマンド Telnet は、単純な HTTP リクエストの送信に役立ちます。

TELNET は特に柔軟なツールであり、FTP/SMTP/POP3/TCP などの単純なリクエストを行うためにも使用できます。

スタートメニュー--ファイル名を指定して実行--CMDコマンドを使用してDOS状態に入ります。

「Telnet ホスト アドレス ポート (Telnet 192.168.1.99 80)」と入力して Telnet コマンド状態に入ります (ウィンドウは完全に真っ黒で、この時点では文字の出力に問題が発生します)。「ctrl」+「] を押します。 " を押して通常の CMD ウィンドウに戻り、"ENTER" キーを押してコマンド編集状態に入ります。

TELNET コマンドが見つからないというメッセージが表示された場合は、次の方法に従って TELNET コマンドのロックを解除してください。

TELNETコマンド入力モードに入ると、ヘッダーファイルを直接編集して送信できます

注意: リクエストヘッダーファイルを編集した後、Enter キーを 2 回押して送信してください。

これは標準的な HTTP リクエストとレスポンスです。前のセクションの HTTP ファイルに関連していますか?

もちろん、そんな不便なツールをそのまま使うわけにはいきません。次に紹介するのは、PHP の fsockopen() メソッドです。

まず fsockopen() メソッドのプロトタイプを見てみましょう:

リーリー

リソースタイプの結果を返します。渡す必要があるパラメータは次のとおりです:

$hostname: ホスト名

$port: ポート番号

$errno: エラー番号 (接続にエラーが発生すると、プロトタイプ内の「&」が $errno に割り当てられることに注意してください)

$errstr: エラー文字列 (接続中にエラーが発生すると、エラーメッセージが $errstr に割り当てられます)

$timeout: タイムアウト期間

リーリー

このリソース タイプは、Telnet で telnet ホスト名ポート番号コマンドを使用した後の環境とまったく同じです。

次に、この環境にコンテンツを書き込みます。

fwrite() メソッドを使用してヘッダー情報をバッチで書き込むことも、ヘッダー情報を結合して一度に書き込むこともできます。

リーリー

または、最初につなぎ合わせてから次のように書く方法:

リーリー

注: リクエスト行とヘッダーの間には復帰キーがあります。入力を終了するときは、「rn」を使用して 2 つの復帰をシミュレートします。

次に、fread を使用して応答情報を読み取り、$info に保存します。

リーリー

もちろん、上記は非常に単純な例であり、より多くのヘッダー情報を組み合わせることで (Accept の追加など)、より完璧にすることができます。

次に、いくつかの一般的な POST メソッドについて説明します。

この記事が役立つと思われる場合は、クリックして推奨してください。ご質問がある場合は、下にメッセージを残して一緒に議論してください。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/1067094.html技術記事 PHP で POST リクエストの送信をシミュレートする 3. Telnet と fsockopen() を使用して POST 情報の送信をシミュレートする telnetfsockopen HTTP ヘッダー情報と URL 情報の具体的な内容を理解した後、実際に自分でやってみました...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。