2012-03-29 90 views
0

我需要将xml事件从某个服务器推送到NodeJS服务器。将XML事件推送到NodeJS服务器?

我认为这样做的最好方法是创建一个基于NodeJS的Web服务(WSDL,SOAP,XML ......根据标准),但是我没有找到任何模块。

我想过socket.io很好,但我认为这是相关的,只有当通信包括浏览器...

任何想法?

感谢

回答

1

好了,好消息是节点为您提供了非常灵活,但并不总是必须实现这样的事情库。

那么,第一个问题是对方是否已经存在?如同为什么XML一样?

假设它不是,但你确实想要使用XML,两个选项包括HTTP(REST)或TCP套接字,这两个选项都可以在Node中实现。

首先,HTTP:

我将使用快递,虽然你可以使用另一种框架或只是HTTP如果你喜欢。

var express = require('express') 
var app = express.createServer(); 
var notQuiteBasic = function(req, res, next) { 
    if (req.headers['Authentication']) { 
     req.authenticated = true; 
    }; 
    next(); 
}; 

app.use(notQuiteBasic); 
app.post('/xml', function(req, res) { 
    if (req.authenticated) { 
     processXml(req.body, function() { 
      res.send(200); 
     }); 
    }; 
}); 
app.listen(8000); 

和TCP:

var socket = require('socket'); 
var server = socket.createServer(); 
server.on('data', function (data) { 
    /* TODO: check envelope auth */ 
    processXml(data); 
}); 
server.listen(8222, '0.0.0.0');