Maison  >  Article  >  interface Web  >  JavaScript peut-il se connecter directement à un socket TCP à partir d'un navigateur ?

JavaScript peut-il se connecter directement à un socket TCP à partir d'un navigateur ?

DDD
DDDoriginal
2024-10-21 07:17:02865parcourir

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

JavaScript peut-il se connecter à un socket TCP à partir d'un navigateur ?

Contexte :

Vous disposez d'une application VB.NET avec un socket TCP en écoute. Vous souhaitez communiquer avec cette application à partir d'un script JavaScript exécuté dans un navigateur. L'objectif est d'envoyer des données au socket, de recevoir une réponse avec de nouvelles données et de l'afficher dans le navigateur.

Réponse :

Actuellement, non Le navigateur principal dispose d'une API de socket brute intégrée pour JavaScript. Vous ne pouvez donc pas vous connecter directement à un socket TCP à l'aide de JavaScript.

Solutions possibles :

  • XHR ou WebSockets :Ces technologies permettent pour le transfert de données asynchrone, mais présente des limites par rapport aux sockets bruts.
  • API Chrome expérimentale : Chrome offre une prise en charge expérimentale des sockets TCP bruts, mais elle n'est actuellement disponible que pour les applications Chrome.

Utilisation de l'API expérimentale de Chrome :

Pour utiliser l'API socket dans Chrome, activez l'indicateur expérimental dans le manifeste de votre extension. Exemples de code pour créer et se connecter à un socket TCP à l'aide de l'API expérimentale de 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>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn