Javascript 来自计划作业的Post请求不起作用
(我对JS、node.JS和Heroku都是新手,所以我希望问题很清楚) 我有一个Heroku node.js应用程序,我可以设置Heroku调度程序每1小时运行一次任务 任务按时运行,调用了方法Javascript 来自计划作业的Post请求不起作用,javascript,node.js,heroku,scheduled-tasks,Javascript,Node.js,Heroku,Scheduled Tasks,(我对JS、node.JS和Heroku都是新手,所以我希望问题很清楚) 我有一个Heroku node.js应用程序,我可以设置Heroku调度程序每1小时运行一次任务 任务按时运行,调用了方法fireHook()(我可以在控制台中看到日志),但请求不起作用(我没有收到任何lo或错误) 这就是工作: #!/usr/bin/env node var request = require('request') function fireHook(){ console.log("firing"
fireHook()
(我可以在控制台中看到日志),但请求不起作用(我没有收到任何lo或错误)
这就是工作:
#!/usr/bin/env node
var request = require('request')
function fireHook(){
console.log("firing")
request({
url: 'https://XXXXXX.herokuapp.com/jobs',
method: "POST",
headers: { "content-type": "application/json" },
json: {"user_id":{ "id":"ddddd"}}
}, function(error, response, body) {
console.log(response)
if (error) {
console.log('Error sending messages: ', error)
} else if (response.body.error) {
console.log('Error: ', response.body.error)
} else {
console.log('success: ', body)
reportToSnitch()
}
})
}
fireHook();
process.exit();
2个问题:
谢谢我认为您的
进程.exit()
正在请求收到响应之前终止您的脚本。尝试将其移动到回调中:
#!/usr/bin/env node
var request = require('request')
function fireHook(){
console.log("firing")
request({
url: 'https://XXXXXX.herokuapp.com/jobs',
method: "POST",
headers: { "content-type": "application/json" },
json: {"user_id":{ "id":"ddddd"}}
}, function(error, response, body) {
console.log(response)
if (error) {
console.log('Error sending messages: ', error)
} else if (response.body.error) {
console.log('Error: ', response.body.error)
} else {
console.log('success: ', body)
reportToSnitch()
}
process.exit();
})
}
fireHook();
reportosnitch()
函数也是异步的,则可能需要在该函数结束时启动进程。exit()