作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是生成错误的代码,此意图在被调用时生成的完整响应是“未设置任何响应。这是在异步调用中使用的,但未作为对意图处理程序的 promise 返回?”我应该怎么做才能纠正它?
app.intent('getCrypto', (conv,{crypto="ethereum",cryptoactions="price"}) =>{
fetch('https://api.coinmarketcap.com/v1/ticker/').then(response => {
return response.json();
}).then(data => {
for (let i = 0; i < data.length - 1; i++) {
if (data[i].id === "bitcoin")
conv.data.price=data[i].price_usd;
conv.ask(`${conv.data.price} is the current value of ${crypto}`);
return response.json();
}
}).catch(err => {
return conv.ask(`${cryptoactions} of ${crypto} is not available. Would you like to know about another one?`);
});
});
最佳答案
错误消息描述了确切的问题“这是在未作为对意图处理程序的 promise 返回的异步调用中使用的吗?”
您应该从您的意图处理程序返回一个异步调用。因此,在调用 fetch
之前添加一个 return
应该可以解决这个问题。
关于javascript - "No response has been set. Is this being used in an async call that was not returned as a promise to the intent handler?"使用 js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52044368/
我是一名优秀的程序员,十分优秀!