gpt4 book ai didi

javascript - 如何从 JavaScript 中的 fetch 返回响应

转载 作者:行者123 更新时间:2023-12-02 21:19:43 24 4
gpt4 key购买 nike

我在返回 React Native 项目中的 API 调用响应时遇到问题。

let response = fetch('http://3.133.123.120:8000/auth/token', {
method: "POST",
headers: {
Accept: 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
client_id: 'NTMtzF7gzZPU9Ka35UFsDHvpR8e4D1Fy4OPRsurx',
grant_type: 'password',
username: user,
password: pass,
})
})
.then((response) => response.json())
.then((response) => this.setState({jsonData: response}))
.then(() => alert('resposne jsonData: ' + JSON.stringify(this.state)));
alert('resposne jsonData: ' + JSON.stringify(response))

上面的代码在底部 .then() 语句中返回正确的响应,但是,我无法使用 fetch() 语句之外的数据。

我尝试在 fetch() 之外使用的任何内容(例如底线中的警报)都给了我以下内容...

{"_40":0,"_65":0,_55":null,"_72":null}

另请注意,这一切都在 React 类组件内

最佳答案

fetch 返回一个 Promise:https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API

此时您已经可以访问该决赛中的值。如果您正在寻找一种在不使用回调的情况下使用下面的值的方法,您可以考虑使用 async/await 样式并将此代码包装在如下函数中:

const fetchData = async () => {
const results = await fetch() // put your fetch here
alert(results.json());
};

获取信息: https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API

异步/等待信息: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/await

关于javascript - 如何从 JavaScript 中的 fetch 返回响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60878396/

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