2011-06-13 24 views
5

Estoy intentando crear una extensión de Chrome utilizando WebSockets HTML5 y no puedo obtener un ejemplo claro. Tengo algunas preguntas que espero que la comunidad pueda responder por mí de una manera clara y concisa.Cómo usar HTML5 WebSockets para extensiones de Chrome

  1. El servidor WebSocket, ¿se puede agregar a una extensión de Google Chrome? De cualquier manera, ¿alguien me puede decir exactamente lo que se necesita para crear un servidor o incluir un enlace decente a un ejemplo claro?
  2. Al conectarse al servidor WebSocket todos siempre tienen algo así como ws: // localhost: número de puerto. ¿Se requiere el ws o cuál es el punto de eso? No sé si esto debe ser una ubicación de archivo o qué. ¿Y solo para asegurarse de que la dirección IP y el número de puerto se encuentren donde se encuentra su servidor y qué puerto está escuchando a la derecha?
  3. Los sitios web como pusher en http://www.pusher.com/ es solo una forma de enviar comunicación entre dos dispositivos diferentes y aún necesita un servidor o reemplaza un servidor/puede esto reemplazar un servidor.

He hecho bastante búsqueda de Google, así que no es como si no supiera nada sobre este tema. Simplemente no entiendo todas las cosas diferentes y la API de websocket no da una definición de ninguna de sus funciones y realmente no explica nada sobre cómo usarla.

Algunos enlaces He comprobado: http://dev.w3.org/html5/websockets/, http://jnext.org/index.html, http://www.pusher.com/, http://jwebsocket.org/, http://joshuakehn.com/blog/view/2/WebSocket-Tutorial-with-Node-js

necesito algo que no necesita ser instalado en un ordenador. Todo servidor/cliente/codificación debe ser javascript que se pueda colocar en una extensión de Chrome. Gracias por cualquier persona que pueda ayudarme.

+0

¿cree que su pregunta fue suficientemente respondida? Si no, ¿hay algo que sientes que falta para responder completamente a tu pregunta? – kanaka

+0

Todavía no hay forma de ejecutar un servidor websocket en una extensión de Chrome. Incluso 'chrome.sockets.tcp' carece del método' listen'. –

Respuesta

2
  1. Parece que está diciendo que desea ejecutar un servidor websocket en el cliente? Eso no será posible. No puede iniciar procesos en la máquina de un usuario desde un navegador.

  2. ws indica que se debe utilizar el protocolo de sockets web al igual que http indica que se debe usar el protocolo de transferencia de hipertexto o ftp indica que se debe usar el protocolo de transferencia de archivos.

  3. Pusher es un servicio que aloja y ejecuta un servidor de socket web para usted. También puede escribir su propio servidor de socket web e instalarlo en su propio servidor.

+0

Bueno, no quiero tanto el cliente como el servidor en la extensión que quiero que el servidor tenga en la extensión. El cliente estará en otra parte tratando de acceder a la extensión. – eric

+1

Estás de suerte con eso. Incluso si pudieras instalar un servidor en la máquina del usuario (que no puedes), tendrás que lidiar con problemas como que los puertos estén abiertos y puedan aceptar conexiones entrantes a través de su firewall, etc. Necesitas tener el servidor de socket web ubicado en otro lugar y luego su navegador se puede conectar al servidor a través de la API de JavaScript api. –

0
  1. No hay API para crear un servidor de WebSockets como una extensión de Chrome. websockify contiene una clase de python para crear servidores WebSocket fácilmente. Vea el ejemplo tests/echo.py.

  2. El prefijo ws:// indica una conexión WebSockets no cifrada. Del mismo modo, wss:// es para conexiones encriptadas (usando TLS/SSL). Uno o el otro es requerido.

  3. Pusher es un servicio WebSockets que proporciona una capa sobre WebSockets sin procesar que hace la gestión de la sesión por usted. No necesita un servidor WebSockets por separado.

+0

así que si tuviera que registrarme para Pusher, ¿no necesitaría alojar un servidor? ¿Pusher aceptaría un mensaje de una fuente externa y lo enviaría a la extensión? – eric

+0

La "fuente externa" todavía tendrá que ser un cliente de WebSockets de algún tipo (navegador u otro). Pero sí, podría enviar un mensaje a Pusher que luego enviaría el mensaje a los otros clientes conectados (navegadores). Es decir. podría tener un cliente especial que envíe precios de acciones y los otros clientes podrían conectarse y recibir esos mensajes. Tenga en cuenta que Pusher es comercial si desea tener más de 20 conexiones (clientes) o 100.000 mensajes por día. – kanaka

Cuestiones relacionadas