PHPウェブソケットでチャットを作成しました。私は、セッションに関するユーザーに関するデータを保存し、そのデータをwebsockets経由の活動に基づいてリアルタイムで変更して読みたいと思っています。 インターネットで見つかったように、スクリプト(プロセス)が実際にWebSocketであるときにセッションを使用することはできません。また、セッションデータはお互いに待つ他のプロセスから変更できるので、私にとっても論理的です。 プロセスは決して完了していないため、ソケットスクリプトは停止しないので、ソケットからセッションを読み書きすることはできません。PHPがソケットのコンテキストでセッションのようにデータを管理する
セッションと同じようにデータを読み書きするにはどうすればよいですか?(同じスクリプト内の)ソケットと組み合わせてセッションを使用することはできませんか? (もちろん、ソケットなしのシンプルなPHPページでは、セッションを使用できます)。
この場合、私が以前にしたことは、データベースにユーザ名を持つ一意のIDを保存することでした。ログイン時にそのIDをセッションに設定し、そのIDでソケットにポストリクエストを行います。ソケットはidに基づいて実際のユーザー名を取得できます。技術的にユーザーがリクエストヘッダーを修正し、誰かの一意のIDを推測しようとする可能性があるため、100%安全ではありません。しかし、プレーンなユーザー名を送信するよりもはるかに安全です。 – icecub