2010-07-19 17 views

risposta

5

Sembra che ci può essere speranza all'orizzonte: http://www.w3.org/TR/webrtc/

+0

Come esempio: https://github.com/cowbell/sharedrop Utilizza HTML5 e WebRTC per il trasferimento via LAN –

0

Risposta breve: No. Non possibile.

Risposta lunga: è possibile scrivere un'applet java firmata che implementa un server Web in ciascun browser. Quindi il browser "a" potrebbe parlare con l'applet "b" del browser (non chiudere la scheda!). Avresti quindi accesso limitato allo stato del browser in questo modo.

Analogamente, è possibile scrivere un plug-in/addon in grado di realizzare gran parte della stessa cosa.

La vera domanda è perché vorresti farlo? cosa stai cercando di realizzare? Rispondi a questa domanda e potremmo essere in grado di trovare una soluzione.

0

Sì, potevano, ma avrebbero dovuto essere progettati per stabilire la connessione (o avrebbe bisogno di avere un modulo che lo faccia).

Anche se mi chiedo perché avrebbero bisogno di ..

1

IIRC, Opera rilasciato una sorta di aggiunta alla loro browser incorporato un server web per appena tale funzionalità:

http://unite.opera.com/

Non sono sicuro che sia andato davvero da nessuna parte, ma penso che arriverà il momento.

+0

+1 interessante. Ma non crea una connessione diretta, utilizza i server Opera per aggirare le restrizioni NAT (in realtà l'unico modo intelligente per farlo comunque) http://www.jorgemarsal.com/blog/2009/06/16/how- does-opera-unites-file-sharing-service-work/ –

+0

Ah, capisco. Avevo pensato che usasse zeroconf/Bonjour per risolvere i client locali. Oh beh, forse un giorno in futuro sarà fatto con node.client.js + CouchDB o qualcosa di divertente come quello. – guns

1

In puro HTML/Javascript? Probabilmente no.

Per quanto ne so, non c'è un buon modo nel JavaScript nativo per ascoltare le connessioni. In HTTP, il client apre una porta, invia una richiesta e riceve una risposta. È possibile utilizzare l'XHTTP o una classe simile per effettuare una richiesta, ma non esiste un modo valido all'interno di una normale pagina Web per creare un server all'altro capo che possa ascoltare le richieste.

Detto questo, so che Flash fornisce una libreria di socket che consente di ascoltare le connessioni. (Immagino che Silverlight faccia altrettanto, anche se non l'ho ancora studiato.) Se dovessi creare un oggetto usando una di queste tecnologie, potresti ascoltare le richieste di connessione da qualsiasi client (supponendo che tu non sia dietro un firewall o qualche altro dispositivo di filtraggio della connessione), mantenere un socket aperto e inviare quello che vuoi sul filo.

Sommario:

  1. probabilmente non può fare questo in JavaScript/HTML/CSS.

  2. MA, è possibile estrarlo in Flash o Silverlight.

0

Flash - Stratus. Novità nell'ultimo flash che fornisce connessioni P2P.

0

Se i browser sono dietro i firewall si può guardare utilizzando NAT traversal. I protocolli come STUN e TURN vengono utilizzati da WebRTC per eseguire questa operazione. Questo sito Web contiene alcuni esempi/esercitazioni HTML5 Rocks

0

Sì, è possibile provare http://httprelay.io con le chiamate AJAX. È semplice:

* Send data: POST https://httprelay.io/link/your_secret_channel_id 
* Receive data GET https://httprelay.io/link/your_secret_channel_id 
Problemi correlati