我尝试将API与我的react原生应用集成,但在发出请求时,总是收到网络错误:
[Unhandled promise rejection: TypeError: Network request failed]
at node_modules\whatwg-fetch\dist\fetch.umd.js:541:17 in setTimeout$argument_0
at node_modules\react-native\Libraries\Core\Timers\JSTimers.js:123:14 in _callTimer
at node_modules\react-native\Libraries\Core\Timers\JSTimers.js:379:16 in callTimers
at node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:414:4 in __callFunction
at node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:113:6 in __guard$argument_0
at node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:365:10 in __guard
at node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:112:4 in callFunctionReturnFlushedQueue
at [native code]:null in callFunctionReturnFlushedQueue
我的axios配置如下:
import axios from "axios";
const baseUrl = 'http://localhost:8000/'
export const api = axios.create({baseURL: baseUrl});
还尝试使用“http://10.0.2.2:8000/”和“http://127.0.0.1:8000”,但得到相同的错误。
有人能帮我吗?提前谢谢你!!
2条答案
按热度按时间pnwntuvh1#
通过查看您的baseUrl,我猜您正在尝试访问本地托管的API。您需要执行以下步骤:
打开命令提示符,键入以下命令:
ipconfig
并记下IPv4地址。现在,将相同的IPv4地址粘贴到axios文件中作为基本URL。例如:
http://YOUR-IPv4-Address-Here:YOUR-API-PORT
我希望这能解决“网络请求失败”的问题。
o4tp2gmn2#
我和你遇到了同样的问题。这里的问题是你没有为你的前端应用程序设置cors。
你的主服务器文件(我的案例
main.py
),应该有一个cors设置如下:在我的例子中,我的前端运行在
http://localhost:3000
上。这应该可以解决问题。