0
Node Restify Module을 사용하여 POST를 허용하는 REST 서비스를 만듭니다. 우리가 동적으로 삽입 된 Javascript를 실행하고 뭔가 잘못 될 경우 노드 샌드 박스 모듈을 사용하여 Sandboxed 프로세스를 만들려고 노력 중입니다. 주 노드 인스턴스에 영향을 미치고 싶지 않습니다.Node.JS REST 서비스에서 Sandbox 실행
샌드 박스를 만들려고 할 때 문제가 발생하여 REST 서비스가 다시 비어있게됩니다.
여기 -------- 내가
나는 다음과 같은 응답
rob has 2
을 기대하고 몸에 {"names":"rob"}
이 내 코드 내 HTTP 요청에서
var restify = require('restify');
var Sandbox = require("sandbox");
var logic;
function createSandbox(body) {
var s = new Sandbox();
s.run("1 + 1", function(output) {
logic = body.names + " has " + output.result;
});
}
function respond(req, res, next) {
createSandbox(req.body);
res.send(logic);
}
var server = restify.createServer();
server.use(restify.bodyParser({
mapParams: false
}));
server.post('/hello/:name', respond);
server.head('/hello/:name', respond);
server.listen(8080, function() {
console.log('%s listening at %s', server.name, server.url);
});
입니다 ---- 업데이트 ------------------- 이 작품은
var restify = require('restify');
var Sandbox = require("sandbox");
var logic;
function respond(req, res, next) {
var s = new Sandbox();
s.run("1 + 1", function(output) {
logic = req.body.names + " has " + output.result;
res.send(logic);
});
}
var server = restify.createServer();
server.use(restify.bodyParser({
mapParams: false
}));
server.post('/run/:id', respond);
server.head('/run/:id', respond);
server.listen(8080, function() {
console.log('%s listening at %s', server.name, server.url);
});
빙고! 고맙습니다. – Rob