-6ren">
gpt4 book ai didi

javascript - 为什么在 Laravel 中获取 JavaScript 总是返回空值?

转载 作者:行者123 更新时间:2023-11-30 13:51:58 26 4
gpt4 key购买 nike

我在 blade 模板 View 中从系统本身获取 API。但我总是返回 {}

fetch("http://mylaravelapp.com/api/list")
.then(response => {
console.log(JSON.stringify(response));
});

我已经使用这个库在我的 API 中设置了 CORS header ,https://github.com/barryvdh/laravel-cors .

最佳答案

有几个问题:

  1. 您没有检查 HTTP 请求是否成功。 很多人犯了这个错误,这是fetch API 设计中的缺陷,更多here在我贫血的小博客上。您需要检查 response.ok
  2. > response是一个没有自己的可枚举属性的对象,因此 JSON.stringify 将为其返回 "{}"。要获得响应,您必须通过响应对象的一种方法(例如 text)读取响应主体。 , json , arrayBuffer , formData , 或 blob .

例如:

fetch("http://mylaravelapp.com/api/list")
.then(response => {
if (!response.ok) {
throw new Error("HTTP error " + response.status);
}
return response.text(); // or .json(), .arrayBuffer(), ...
})
.then(data => {
console.log(JSON.stringify(data));
})
.catch(error => {
console.error(error.message);
});

关于javascript - 为什么在 Laravel 中获取 JavaScript 总是返回空值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58061670/

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