我正在尝试为一个带回家的挑战编写一个 cloudflare worker 脚本。我需要urls
在我的脚本中获取存储在 var 中的给定 url,这将给出一个包含两个 url 的 json 数组。我需要向数组中的一个 url 发出获取请求,这里是我编写的代码
addEventListener('fetch', event => {
event.respondWith(handleRequest(event.request))
})
/**
* Respond with urls
* @param {Request} request
*/
async function handleRequest(request) {
var urls= await fetch('https://cfw-takehome.developers.workers.dev/api/variants')
.then(function(res){
return res;
})
var first=await urls.variants[0];
return first;
}
这是 urls
变量包含的 JSON
{"variants":["https://cfw-takehome.developers.workers.dev/variants/1","https://cfw-takehome.developers.workers.dev/variants/2"]}
但我看到当我尝试访问数组中的第一个对象时,它是未定义的,因为我收到了这个错误
Uncaught (in response) TypeError: Cannot read property '0' of undefined
请帮我找出原因并提出解决方案。我猜我在这里无法理解有关异步 Javascript 的一些概念。