Cómo usar jsonp con node.js express

Estoy tratando de hacer la aplicación Samsung Smart TV con node.js.

En mi proyecto, quiero hacer que mi aplicación se comunique con el servidor PC.

Según muchos sitios web, puedo hacer esto con “jsonp“.

Aquí hay un código del lado del cliente que encontré.

  jsonp test   $(function(){ $('#select_link').click(function(e){ e.preventDefault(); console.log('select_link clicked'); function test(data){ return {"message":"ok"}; } $.ajax({ dataType: 'jsonp', data: "data=yeah", jsonp: 'callback', url: 'http://172.20.10.3:3000/endpoint?callback=?', success: function(data) { console.log('success'); console.log(JSON.stringify(data)); } }); }); });      

Y, aquí hay un código del lado del servidor que he encontrado.

 app.get('/endpoint', function(req, res){ var obj = {}; obj.title = 'title'; obj.data = 'data'; console.log('params: ' + JSON.stringify(req.params)); console.log('body: ' + JSON.stringify(req.body)); console.log('query: ' + JSON.stringify(req.query)); res.header('Content-type','application/json'); res.header('Charset','utf8'); res.send(req.query.callback + '('+ JSON.stringify(obj) + ');'); }); 

Estos códigos funcionan en mi PC (servidor PC), pero cuando abro la página del cliente en otra computadora, no funciona.

Consola solo dame este registro:

  X GET http://172.30.2.2:3000/endpoint?callback=jQuery11020685203080996871_1376482492523&data=yeah&_=1376482492524 

Quiero usar jsonp para manejar dominios cruzados, pero no funciona, creo …

¿Qué puedo hacer para arreglar esto?

¡Por favor, dame ayuda!

Solo usa

 res.jsonp(obj) 

Puedes ir a ExpressJS JSONP para más información.

Tratar de reemplazar

res.send(req.query.callback + '('+ JSON.stringify(obj) + ');');

con

 res.jsonp(req.query.callback + '('+ JSON.stringify(obj) + ');');