Как мне сделать request.write (тело) без тела? - PullRequest
0 голосов
/ 11 октября 2018

Я использую код, показанный ниже.Однако я хочу включить тело в строку запроса (что я могу сделать хорошо) - однако я не уверен, как реструктурировать https.request, чтобы удалить request.write(body) - просто использование request.write() не работает, как это требуетсястрока.

Может кто-нибудь помочь?

Спасибо

var body = JSON.stringify( json.text );
const params = {
    'q': body,
};

var requestUrl = url.parse( URL + queryStringify(params) );
const requestOptions = {
    hostname: requestUrl.hostname,
    path: requestUrl.path,
    method: 'POST',
    headers: {
        'Content-Type': 'application/json',
    }
};

var request = https.request(requestOptions, function(res) {
var data = "";
    res.on('data', function (chunk) {
//do stuff
});
    res.on('end', function () {
//do stuff
    });        
});
request.write(body);
request.end();

1 Ответ

0 голосов
/ 11 октября 2018

Для этого вы можете установить свои параметры в поле path, используя querystring , например:

Установите параметры строки запроса в requestOptions

const querystring = require('querystring');
requestOptions.path = `/your/Path?${querystring.stringify({firstName: 'John', lastName: 'doe'})}`;
// Result is '/your/Path?firstName=John&lastName=doe'

Затем выполните ваш запрос

var request = https.request(requestOptions, function(res) {
    res.on('data', function(chunk) {
        // Do stuff
    });
    res.on('end', function() {
        // Do stuff
    });
});
request.on('error', function (err) {
    // Throw err
});
request.end();

Надеюсь, это поможет.

...