Как сделать эту операцию завивки в node.js
То, что я хотел бы сделать, - это операция curl в node.js
.
curl -XPOST localhost:12060/repository/schema/fieldType -H 'Content-Type: application/json' -d '
{
action: "create",
fieldType: {
name: "n$name",
valueType: { primitive: "STRING" },
scope: "versioned",
namespaces: { "my.demo": "n" }
}
}' -D -
Предложения приветствуются.
Ответы
Ответ 1
Используйте request. запрос является де-факто стандартным способом для HTTP-запросов от node.js. Это тонкая абстракция поверх http.request
request({
uri: "localhost:12060/repository/schema/fieldType",
method: "POST",
json: {
action: "create",
fieldType: {
name: "n$name",
valueType: { primitive: "STRING" },
scope: "versioned",
namespaces: { "my.demo": "n" }
}
}
});
Ответ 2
здесь http://query7.com/nodejs-curl-tutorial
Хотя для cURL нет конкретных привязок NodeJS, мы все равно можем выдавать запросы cURL через интерфейс командной строки. NodeJS поставляется с модулем child_process, который легко позволяет нам запускать процессы и читать их выходные данные. Это довольно прямолинейно. Нам просто нужно импортировать метод exec из модуля child_process и вызвать его. Первый параметр - это команда, которую мы хотим выполнить, а вторая - функция обратного вызова, которая принимает ошибку, stdout, stderr.
var util = require('util');
var exec = require('child_process').exec;
var command = 'curl -sL -w "%{http_code} %{time_total}\\n" "http://query7.com" -o /dev/null'
child = exec(command, function(error, stdout, stderr){
console.log('stdout: ' + stdout);
console.log('stderr: ' + stderr);
if(error !== null)
{
console.log('exec error: ' + error);
}
});
EDIT Это также возможное решение: https://github.com/dhruvbird/http-sync
Ответ 3
взгляните на https://github.com/chriso/curlrequest