ホームページ >バックエンド開発 >PHPチュートリアル >curl はログインをシミュレートし、Cookie によって送信される URL が常に変更されることを確認します。
Curl はログインをシミュレートし、Cookie によって送信される URL が常に変化することを確認します。
最初のステップは、get メソッドを使用してホームページを開くことです。2 番目のステップは、ホームページ上のログイン ボタンをクリックすることです。ログイン ボックスが表示されます。投稿データが完成するとログインが完了します。
2 番目のステップでは、最初のステップで生成された Cookie 値が必要です。
最初のステップはホームページにアクセスすることですが、10 近くの URL が自動的にリクエストされます。これらの URL の多くは、ホームページに js が読み込まれた直後に自動的に送信されます。
この Cookie は、これらのページのいずれかによってクライアントに書き込まれます。
この Cookie を取得するには、10 ページを超えるシミュレーションが必要になることを想像できますか?
そして、これらのページも変更されていることがわかりました。今回は表示されるが、次にホームページをクリックしたときには表示されないものもあります。つまり、ある訪問中にこの Cookie がどのページで発行されたのかわかりません。
ブラウザのように、最初にリクエストされたページの下で js によってリクエストされた新しいページを、curl は自動的に処理できないようです。
各ページをシミュレートしたい場合は、それは不可能だと思われます。
ページをリクエストするためにcurlを使用する場合、すべてのCookieが取得できるように、このページによって自動的に発行される後続のリクエストをcurlが自動的に処理する必要があると考えています。しかし、実装はこのようには見えません。curlは1つのURLと1つのURLしかリクエストできません。
このような状況ではカールは無力であるというのは本当ですか?結局のところ、curl はブラウザではありません。
皆さん、ヒントを。もしcurlがそれを処理できないなら、どの言語がそれを処理できるでしょうか?