如何解决来自 Vue.js 应用程序 (Axios) 的 2 个同时 API 调用随机失败但在 Postman 中工作
我目前正在使用 Vue.js 构建我的前端,而我的 API 是使用 Slim 构建的。 我所有只需要一个 API 的页面都可以正常运行。
我正在处理的当前页面需要对 localhost/api/events
和 localhost/api/events/68/results
进行 2 个 API 调用。我的 Vue 前端位于 localhost:8080
。
在其他页面上自行执行 API 请求工作正常。在 Postman 中自行执行 API 请求工作正常。在 Postman Runner 中执行两个 API 调用的多次迭代工作正常。
它们都在我的 Vuex 存储中调用相同的操作 (getEvents / getResults)
但是通过 Axios 从我的前端执行两个 API 调用,其中一个或两个随机失败并出现 Slim 应用程序错误。
500 Internal Server Error
Object { type: "Illuminate\\Database\\QueryException",code: 0,message: "Database hosts array is empty. (SQL: select * from `events` where `events`.`id` = 68 limit 1)",… }
...
message "Database hosts array is empty. (SQL: select * from `events` where `events`.`id` = 68 limit 1)"
解决方法
您似乎在使用 .env 文件作为数据库凭据。问题是这不是线程安全的,不应在生产中使用。这是一个已知的问题。最好使用 env.php 文件来解决这个问题。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。