2012-03-01 21 views
1

私はブラウザを開いたままで私の家のPCにいると言います。ブラウザを閉じたり、24分間アイドル状態を維持していれば、セッションを使用するサイトにアクセスします。後続のHTTPリクエストを行うとセッションは維持されますサイトへ。PHPはクライアントとしてサーバとの永続セッションを維持できますか?

PHPを実行しているサーバーで、同じサイトからページをリクエストするためにfopen()またはfile_get_contents()を使用すると、そのサイトは自分のサーバーである「ユーザー」のセッションを作成しますか?後続のfopen()要求のためにセッションが維持されるように接続を開いたままにする方法はありますか?

これは、後続のリクエストで要求ヘッダーにセッションIDを渡すことで可能ですか?つまり、セッションIDを含むヘッダーを設定し、ヘッダーをcontext_stream_create()に渡してから、次のfopen()リクエストでコンテキストを渡します。これは私が本当に必要なものですPOST要求(これは)行うことができますか?

答えて

0

HTTP言語を話すことができるアプリであれば、Cookieを保存してHTTPに保存することができます。

あなたの質問に対する答えはYESです。適切なプロトコル(GET/POST)を使用し、適切なヘッダー(Host、User-Agent、...)を送信するだけで、何でもできます。 代わりの解決策があります。このクラスは役に立ちます:PHP Browser Class

+0

これは、私がやっていることでうまくいくようですが、リクエストごとにカスタムヘッダーを送信する方法が含まれていますか? – Joey

+1

@Joeyまた、カールを使うこともできます。セッションIDクッキーを含め、任意のヘッダーを送信できます。 – dqhendricks

+0

Browserクラスには任意のヘッダーを追加するメソッドはありませんが、CURLを使用するため、数行のコードで行うことができます。 –

関連する問題