gpt4 book ai didi

javascript - 在异步等待中返回未决的 promise

转载 作者:行者123 更新时间:2023-11-29 20:51:19 25 4
gpt4 key购买 nike

我正在学习使用 async/await 并且在尝试发出 api 请求以设置我的 twilio 设备时遇到问题。鉴于以下代码块,当我调用 device() 时,我收到以下错误消息:

Uncaught 
TwilioException {message: "Capability token is not valid or missing."}
message
:
"Capability token is not valid or missing."
__proto__
:
Object

我认为这是因为 device 函数中返回的 json 仍显示为待处理。我该如何解决这个问题,我做错了什么?谢谢。

代码块:

import {Device} from 'twilio-client';

const api = async () => {
try {
const response = await fetch('/api/twilio');
const json = await response.json();
if (response.status === 403) {
twilioConnectionFailure('Twilio has not been purchased.');
}
return json;
} catch (error) {
console.log(`Connection failed: ${error.message}`);
throw Error(error.message);
}
};

const device = () => {
const json = api();
Device.setup(json.token);
return Device;
};

export default device;

最佳答案

api 函数仍然是异步的并返回一个 promise - 你需要等待它:

export default async function device() {
const json = await api();
// ^^^^^
Device.setup(json.token);
return Device;
}

关于javascript - 在异步等待中返回未决的 promise ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51732706/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com