Rumah  >  Artikel  >  hujung hadapan web  >  Bolehkah JavaScript Sambung Terus ke Soket TCP daripada Penyemak Imbas?

Bolehkah JavaScript Sambung Terus ke Soket TCP daripada Penyemak Imbas?

DDD
DDDasal
2024-10-21 07:17:02862semak imbas

Can JavaScript Directly Connect to a TCP Socket from a Browser?

Bolehkah JavaScript Bersambung ke Soket TCP daripada Penyemak Imbas?

Konteks:

Anda mempunyai aplikasi VB.NET dengan soket TCP mendengar. Anda ingin berkomunikasi dengan aplikasi ini daripada skrip JavaScript yang dijalankan dalam penyemak imbas. Matlamatnya adalah untuk menghantar data ke soket, menerima respons dengan data baharu dan memaparkannya dalam penyemak imbas.

Jawapan:

Pada masa ini, tidak pelayar utama mempunyai API soket mentah terbina dalam untuk JavaScript. Oleh itu, anda tidak boleh menyambung terus ke soket TCP menggunakan JavaScript.

Penyelesaian Kemungkinan:

  • XHR atau WebSockets: Teknologi ini membenarkan untuk pemindahan data tak segerak tetapi mempunyai had berbanding dengan soket mentah.
  • API Chrome Eksperimen: Chrome mempunyai sokongan percubaan untuk soket TCP mentah, tetapi pada masa ini ia hanya tersedia untuk apl Chrome.

Menggunakan API Eksperimen Chrome:

Untuk menggunakan API soket dalam Chrome, dayakan bendera percubaan dalam manifes sambungan anda. Contoh kod untuk membuat dan menyambung ke soket TCP menggunakan API percubaan Chrome:

<code class="javascript">chrome.experimental.socket.create('tcp', '127.0.0.1', 8080, function(socketInfo) {
  chrome.experimental.socket.connect(socketInfo.socketId, function (result) {
    chrome.experimental.socket.write(socketInfo.socketId, "Hello, world!");
  });
});</code>

Atas ialah kandungan terperinci Bolehkah JavaScript Sambung Terus ke Soket TCP daripada Penyemak Imbas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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