如何解决解决Async / Await中未定义的最短路径
我正在尝试使用Netlify函数(经过修改的return-env.js)来保护我的API密钥,该函数可以捕获并输出环境变量。由于我的项目使用的是普通JS,因此我必须从函数中获取键才能使用它。但这就是困难所在。
目前,我有:
function getKey() {
(async ()=> {
const response = await fetch('/.netlify/functions/return-env')
const resObj = await response.json()
console.log(resObj);
return resObj;
})();
}
console.log("my key " + getKey())
const Airtable = require('airtable');
const base = new Airtable({apiKey: 'EXAMPLE-API-KEY'})
getKey()
始终返回未定义,就像resObj
记录在函数外部一样。这里缺少什么?
解决方法
getKey将返回未定义的,因为您未在函数调用中返回任何内容
function getKey() {
return (async ()=> {
...
})();
}
它现在将返回一个promise,您可以随后将其链接或等待,等待将要求它处于异步函数中。
如果您只想将.then()删除:
getKey().then((key) => {
// do something with the key object
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。