Javascript 承诺内的API调用(TypeError:response.json不是函数)
为什么我总是得到TypeError:response.json不是一个函数 我对此做了广泛的研究,但所有的响应都涉及异步等待调用,我对纯承诺语法(顺便说一句,“newpromise..”语法,而不是使用Promise.all的语法)很好奇 尝试此获取语法Javascript 承诺内的API调用(TypeError:response.json不是函数),javascript,asynchronous,promise,httprequest,response,Javascript,Asynchronous,Promise,Httprequest,Response,为什么我总是得到TypeError:response.json不是一个函数 我对此做了广泛的研究,但所有的响应都涉及异步等待调用,我对纯承诺语法(顺便说一句,“newpromise..”语法,而不是使用Promise.all的语法)很好奇 尝试此获取语法 fetch('https://api-to-call.com/endpoint)。然后(响应=>{ if(response.ok){ 返回response.json(); } 抛出新错误('请求失败!'); },networkError=>c
fetch('https://api-to-call.com/endpoint)。然后(响应=>{
if(response.ok){
返回response.json();
}
抛出新错误('请求失败!');
},networkError=>console.log(networkError.message))。然后(jsonResponse=>{
返回jsonResponse;
})
您解决了这个问题吗?谢谢您的发帖。您的代码可以工作,但是我对上面使用的语法很好奇。怎么了?
const getName0 = (username) => new Promise((resolve, reject) => {
const url = `https://api.github.com/users/${username}`;
const response = fetch(url);
if (response) {
const json = response.json();
return resolve(json.name);
} else {
return reject("User does not exist!");
}
});
getName0('rickitan').then(res => console.log(res)).catch(err => console.log(err));