ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript で WebSocket クライアントにカスタム HTTP ヘッダーを追加するにはどうすればよいですか?

JavaScript で WebSocket クライアントにカスタム HTTP ヘッダーを追加するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-02 14:48:11901ブラウズ

How Can I Add Custom HTTP Headers to My WebSocket Client in JavaScript?

WebSocket クライアント API の HTTP ヘッダー

WebSocket API は、カスタム HTTP ヘッダーをクライアントに追加する簡単な方法を提供します。ただし、特定のヘッダーのみを指定できることに注意してください。

カスタマイズの制限

常識に反して、JavaScript WebSockets API では任意の HTTP ヘッダーを指定できません。 。パスとプロトコルのフィールドのみを設定できます。パスは WebSocket コンストラクターの最初の引数で指定され、プロトコル ヘッダーはオプションの 2 番目の引数で指定されます。

プロトコル ヘッダーの指定

var ws = new WebSocket("ws://example.com/path", "protocol");

上記のコード次のヘッダーを生成します:

Sec-WebSocket-Protocol: protocol

複数を指定することもできますプロトコル:

var ws = new WebSocket("ws://example.com/path", ["protocol1", "protocol2"]);

次のヘッダーが生成されます:

Sec-WebSocket-Protocol: protocol1, protocol2

認証/認可

WebSocket 経由で認証する一般的なアプローチは次のとおりです。発券システムを利用します。サーバーは、クライアントが URL、プロトコル フィールド、または接続後の最初のメッセージに含めるチケットを生成します。次に、サーバーはチケットを検証し、それに応じて接続を続行または拒否します。

Basic Authentication (Deprecated)

Basic 認証は以前は受け入れられていましたが、廃止され、受け入れられませんでした。最新のブラウザではサポートされなくなりました。

追加注

WebSocket URI のユーザー名とパスワードから Authorization ヘッダーを生成できることに言及する価値があります (ただし、このメソッドも非推奨です)。

WebSocket セキュリティの詳細については、 、この記事を参照してください: https://devcenter.heroku.com/articles/websocket-security

以上がJavaScript で WebSocket クライアントにカスタム HTTP ヘッダーを追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。