Я пишу программу на nodejs, используя модуль запроса-обещания для создания сценария запуска, получения идентификатора сценария, затем создания сервера и применения идентификатора сценария, однако даже после сбора идентификатора сценария и его передачи на запрос на создание сервера он не распространяется. Я удостоверился, что значение переменной, которую я передаю для scriptID, находится в правильной форме типа данных, но оно все еще, кажется, не работает по какой-то причине
var scriptRequest = require('request-promise-native');
var serverRequest = require('request-promise-native');
var headers = {
'API-Key': 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
};
var scriptOptions = {
url: "https://api.vultr.com/v1/startupscript/create",
method: "POST",
headers: headers,
form: {
name: "test script",
script: "#!/bin/bash \napt-get update (not the actual script, just shortened it since the script itself is long and as of now the vultr server doesn't even make it this far)"}
};
var serverOptions = {
url: 'https://api.vultr.com/v1/server/create',
method: 'POST',
headers: headers,
form: {
DCID: '6',
VPSPLANID: '202',
OSID: '215',
SCRIPTID: scriptResponse
}
};
var scriptResponse;
async function main(){
const response = await scriptRequest({...scriptOptions, json:true})
const json = response.SCRIPTID
scriptResponse = json
await serverRequest(serverOptions)
}
main()
, как вы можете видеть, у меня было чтобы сделать переменную scriptRequest глобальной, если я попытаюсь установить ее в основной функции, она выдаст мне неопределенную ошибку в блоке serverOptions
EDIT: просто чтобы уточнить, идентификатор сценария, который я хочу применить к переменной scriptResponse возвращается после отправки запроса scriptRequest