Нужна помощь в переписывании эквивалентного кода Curl для узла JS Express
У меня есть эта команда curl, которая отлично работает в командной строке Windows
curl --request PUT --header "PRIVATE-TOKEN: VQtT2w4suWM6wnD3m6qt" --header "Content-Type: application/json" --data @C:\Gatling2\gatling3james\src\gatling\resources\data\input.json "https://code.abc.cloud/api/v4/projects/159/repository/files/%2Fsrc%2Fgatling%2Fresources%2Fdata%2Finput-gamekeeper%2Ejson?ref=master"
Теперь с этим замечательным инструментом https://curl.trillworks.com/#node я получил выше curl, преобразованный в Node.js
var request = require ('request');
var headers = {
'PRIVATE-TOKEN': 'token',
'Content-Type': 'application/json'
};
var dataString = '@C:\Gatling2\gatling3james\src\gatling\resources\data\input.json';
var options = {
url: 'https://code.abc.cloud/api/v4/projects/159/repository/files/%2Fsrc%2Fgatling%2Fresources%2Fdata%2Finput-gamekeeper%2Ejson?ref=master',
method: 'POST',
headers: headers,
body: dataString
};
function callback(error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body);
}
}
request(options, callback);
Теперь в моем проекте js для узла я установил запрос, используя npm install request
Теперь я переписал приведенный выше код curl в узел js, преобразованный в мой маленький проект js POST
const express = require('express')
const bodyParser = require('body-parser')
const Gitlab = require('gitlab')
const app = express()
const request = require('request')
app.use(bodyParser.urlencoded({extended:false}))
app.post('/postgatlingrequests',(req,res)=>{
var request = require('request');
var headers = {
'PRIVATE-TOKEN': 'token',
'Content-Type': 'application/json'
};
var dataString = '@C:\Gatling2\gatling3james\src\gatling\resources\data\input.json';
var options = {
url: 'https://code.abc.cloud/api/v4/projects/159/repository/files/%2Fsrc%2Fgatling%2Fresources%2Fdata%2Finput-gamekeeper%2Ejson?ref=master',
method: 'POST',
headers: headers,
body: dataString
};
function callback(error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body);
}
}
request(options, callback)});
app.listen(3000,function(){
console.log("Started on PORT 3000");
})
Я перезапустил сервер узла с помощью узла index.js и получил сообщение suucess при запускеPORT 3000 Теперь, когда я набираю http://localhost:3000/postgatlingrequests в браузере, он говорит, что localhost отказался подключаться.
Я ожидаю, что локальный сервер должен иметь возможность отправлять POST-запрос, очень похожий на CURL-запрос, может, некоторыеодна помощь