<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ca">
		<id>http://wikiserver.infomerce.es/index.php?action=history&amp;feed=atom&amp;title=Sol_websockets_chat</id>
		<title>Sol websockets chat - Historial de revisió</title>
		<link rel="self" type="application/atom+xml" href="http://wikiserver.infomerce.es/index.php?action=history&amp;feed=atom&amp;title=Sol_websockets_chat"/>
		<link rel="alternate" type="text/html" href="http://wikiserver.infomerce.es/index.php?title=Sol_websockets_chat&amp;action=history"/>
		<updated>2026-05-09T15:26:12Z</updated>
		<subtitle>Historial de revisió per a aquesta pàgina del wiki</subtitle>
		<generator>MediaWiki 1.28.0</generator>

	<entry>
		<id>http://wikiserver.infomerce.es/index.php?title=Sol_websockets_chat&amp;diff=8971&amp;oldid=prev</id>
		<title>Jnoguera a 18:59, 6 gen 2018</title>
		<link rel="alternate" type="text/html" href="http://wikiserver.infomerce.es/index.php?title=Sol_websockets_chat&amp;diff=8971&amp;oldid=prev"/>
				<updated>2018-01-06T18:59:23Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='ca'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Versió més antiga&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revisió del 18:59, 6 gen 2018&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Línia 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Línia 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;CLIENTE&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;source lang=&amp;quot;html&amp;quot;&amp;gt;´&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;source lang=&amp;quot;html&amp;quot;&amp;gt;´&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;!DOCTYPE html&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;!DOCTYPE html&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l51&quot; &gt;Línia 51:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Línia 52:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/source&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/source&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;SERVER.JS&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jnoguera</name></author>	</entry>

	<entry>
		<id>http://wikiserver.infomerce.es/index.php?title=Sol_websockets_chat&amp;diff=8970&amp;oldid=prev</id>
		<title>Jnoguera: Es crea la pàgina amb «&lt;source lang=&quot;html&quot;&gt;´ &lt;!DOCTYPE html&gt; &lt;html lang=&quot;es&quot;&gt; &lt;head&gt;   &lt;meta charset=&quot;UTF-8&quot;&gt;   &lt;title&gt;Chat la Mercè&lt;/title&gt;  &lt;script src=&quot;./node_modules/socket.io-client/d...».</title>
		<link rel="alternate" type="text/html" href="http://wikiserver.infomerce.es/index.php?title=Sol_websockets_chat&amp;diff=8970&amp;oldid=prev"/>
				<updated>2018-01-06T18:59:01Z</updated>
		
		<summary type="html">&lt;p&gt;Es crea la pàgina amb «&amp;lt;source lang=&amp;quot;html&amp;quot;&amp;gt;´ &amp;lt;!DOCTYPE html&amp;gt; &amp;lt;html lang=&amp;quot;es&amp;quot;&amp;gt; &amp;lt;head&amp;gt;   &amp;lt;meta charset=&amp;quot;UTF-8&amp;quot;&amp;gt;   &amp;lt;title&amp;gt;Chat la Mercè&amp;lt;/title&amp;gt;  &amp;lt;script src=&amp;quot;./node_modules/socket.io-client/d...».&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Pàgina nova&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;source lang=&amp;quot;html&amp;quot;&amp;gt;´&lt;br /&gt;
&amp;lt;!DOCTYPE html&amp;gt;&lt;br /&gt;
&amp;lt;html lang=&amp;quot;es&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
  &amp;lt;meta charset=&amp;quot;UTF-8&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;title&amp;gt;Chat la Mercè&amp;lt;/title&amp;gt;&lt;br /&gt;
 &amp;lt;script src=&amp;quot;./node_modules/socket.io-client/dist/socket.io.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
 &amp;lt;script src=&amp;quot;https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
  &amp;lt;script &amp;gt;&lt;br /&gt;
&lt;br /&gt;
var socket = io.connect('http://localhost:8080', { 'forceNew': true });&lt;br /&gt;
&lt;br /&gt;
socket.on('messages', function(data) {&lt;br /&gt;
  console.log(data);&lt;br /&gt;
  render(data);&lt;br /&gt;
})&lt;br /&gt;
&lt;br /&gt;
function render (data) {&lt;br /&gt;
  var html = data.map(function(elem, index) {&lt;br /&gt;
    return(`&amp;lt;div&amp;gt;&lt;br /&gt;
              &amp;lt;strong&amp;gt;${elem.nombre}&amp;lt;/strong&amp;gt;:&lt;br /&gt;
              &amp;lt;em&amp;gt;${elem.text}&amp;lt;/em&amp;gt;&lt;br /&gt;
            &amp;lt;/div&amp;gt;`);&lt;br /&gt;
  }).join(&amp;quot; &amp;quot;);&lt;br /&gt;
&lt;br /&gt;
  document.getElementById('messages').innerHTML = html;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function addMessage(e) {&lt;br /&gt;
  var message = {&lt;br /&gt;
    nombre: document.getElementById('username').value,&lt;br /&gt;
    text: document.getElementById('texto').value&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
  socket.emit('new-message', message);&lt;br /&gt;
  return false;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
  &amp;lt;h1&amp;gt;CHAT LA MERCÈ&amp;lt;/h1&amp;gt;&lt;br /&gt;
  &amp;lt;div id=&amp;quot;messages&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;br/&amp;gt;&lt;br /&gt;
  &amp;lt;form onsubmit=&amp;quot;return addMessage(this)&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;username&amp;quot; placeholder=&amp;quot;Tu Nombre&amp;quot; &amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;texto&amp;quot; placeholder=&amp;quot;Cuéntanos algo...&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;submit&amp;quot; value=&amp;quot;Enviar!&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;/form&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
var express = require('express');&lt;br /&gt;
var app = express();&lt;br /&gt;
var path = require('path');&lt;br /&gt;
var server = require('http').Server(app);&lt;br /&gt;
var io = require('socket.io')(server);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
app.use(express.static(path.join(__dirname, '/'))); //Para el servicio de archivos estáticos como, por ejemplo, imágenes, archivos CSS y archivos JavaScript,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
server.listen(8080, function() {   ////Pondremos el servidor a escuchar en localhost con el puerto 8080&lt;br /&gt;
  console.log('Servidor corriendo en http://localhost:8080');&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
var messages = [{&lt;br /&gt;
  nombre: &amp;quot;Julio&amp;quot;,&lt;br /&gt;
    text: &amp;quot;Hola! ¿qué haces?&amp;quot;&lt;br /&gt;
},{&lt;br /&gt;
  nombre: &amp;quot;Albert&amp;quot;,&lt;br /&gt;
    text: &amp;quot;haciendo un poco de JSP&amp;quot;&lt;br /&gt;
},{&lt;br /&gt;
  nombre: &amp;quot;ALex&amp;quot;,&lt;br /&gt;
    text: &amp;quot;Qué alegria!&amp;quot;&lt;br /&gt;
}];&lt;br /&gt;
&lt;br /&gt;
io.on('connection', function(puertoSocket) {&lt;br /&gt;
  console.log('Alguien se ha conectado con Sockets');&lt;br /&gt;
  puertoSocket.emit('messages', messages);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  puertoSocket.on('new-message', function(data) {&lt;br /&gt;
    messages.push(data);&lt;br /&gt;
&lt;br /&gt;
    io.sockets.emit('messages', messages);   &lt;br /&gt;
  });&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jnoguera</name></author>	</entry>

	</feed>