Rumah > hujung hadapan web > tutorial js > Bolehkah saya Menyesuaikan Pengepala HTTP dalam API WebSocket?

Bolehkah saya Menyesuaikan Pengepala HTTP dalam API WebSocket?

DDD
Lepaskan: 2024-12-20 00:06:08
asal
790 orang telah melayarinya

Can I Customize HTTP Headers in the WebSocket API?

Pengepala HTTP dalam API Klien WebSocket

Secara umum diketahui bahawa menyesuaikan pengepala HTTP boleh dicapai dengan klien pengepala HTTP yang menyokong ciri ini. Tetapi bagaimana anda melakukannya secara khusus dengan API WebSocket dalam platform web?

Adakah Mungkin?

Ringkasnya, jawapannya ialah tidak. Hanya laluan dan medan protokol boleh ditentukan.

Penjelasan Lebih Panjang

Tiada kaedah terbina dalam dalam JavaScript WebSocket API untuk menetapkan pengepala tambahan. Walau bagaimanapun, anda boleh menentukan laluan HTTP ("GET /xyz") dan pengepala protokol ("Sec-WebSocket-Protocol") semasa pemula pembina WebSocket.

Pengepala Sec-WebSocket-Protocol, yang boleh digunakan untuk pengesahan khusus soket web, diperoleh daripada hujah kedua pilihan bagi pembina:

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

Penyelesaian Kemungkinan

Pendekatan biasa untuk mengendalikan pengesahan/keizinan WebSocket adalah melalui sistem tiket. Di sini, halaman yang mengehos klien WebSocket meminta tiket daripada pelayan dan memasukkannya dalam persediaan sambungan (cth., dalam rentetan URL/pertanyaan, medan protokol atau sebagai mesej pertama selepas mewujudkan sambungan). Pelayan kemudian mengesahkan tiket untuk kesahihan dan membenarkan sambungan jika ia lulus.

Atas ialah kandungan terperinci Bolehkah saya Menyesuaikan Pengepala HTTP dalam API WebSocket?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan