我使用NickJs制作WebRequests。在大多数情况下,NickJs做我需要的(打开浏览器,导航等)。但是,在继续执行代码之前,我需要对另一个服务进行同步调用(自定义WebRequest)。
我无法弄清楚如何正确地使这个调用同步。我当前的设置使用包含在异步功能中的NickJs并使用' await'等待WebRequest返回。
我不认为我可以将它用于我的自定义请求,但我觉得我应该能够创建自己的函数并等待WebRequest完成,然后再继续执行代码。
示例:
const nick = new Nick({
printNavigation: false,
printResourceErrors: true,
printPageErrors: true,
resourceTimeout: 10000,
userAgent: "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36",
})
; (async () => {
await tab.open("https://google.com")
//custom function here to request another webpage from another service
//and wait for the result before moving on to next await call
//Continue on as normal with code
await tab.open("https://google.com")
})()
.then(() => {
console.log("Hooray!")
nick.exit()
})
.catch((err) => {
console.log(`Boo!: ${err}`)
nick.exit(1)
})