最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

React Native (with Expo) fetch() TypeError: Network request failed on same computer - Stack Overflow

programmeradmin0浏览0评论

I cannot fetch anything from my local .NET webAPI (that's running on my computer) while using my react native app (Expo Go) that is "streamed" to my phone. The error I get is: TypeError: Network request failed

I am able to fetch other public test API's like "; with my app.

The backend is also reachable via Postman and browser by every device in the network, when trying to get response from it.

This is my setup:

  1. Computer that has the backend (192.168.8.100:7036) web API running AND the Expo Go (192.168.8.100:8081) server running.
  2. Phone that displays the app while being connected to the Expo Go server via Expo Go app.
  3. Every device is in the same network.

I cannot fetch anything from my local .NET webAPI (that's running on my computer) while using my react native app (Expo Go) that is "streamed" to my phone. The error I get is: TypeError: Network request failed

I am able to fetch other public test API's like "https://jsonplaceholder.typicode/todos/1" with my app.

The backend is also reachable via Postman and browser by every device in the network, when trying to get response from it.

This is my setup:

  1. Computer that has the backend (192.168.8.100:7036) web API running AND the Expo Go (192.168.8.100:8081) server running.
  2. Phone that displays the app while being connected to the Expo Go server via Expo Go app.
  3. Every device is in the same network.
Share Improve this question asked Nov 20, 2024 at 12:27 Christopher DyjaChristopher Dyja 112 bronze badges
Add a comment  | 

3 Answers 3

Reset to default 0

Your react native app cannot connect to your local server just like a web app or your postman app. To connect to your local server, use http://10.0.2.2:7036 instead of http://192.168.8.100:7036 for your API connection url.

Figured a workaround. Not sure 100% but the issue could've been caused by having my mobile app running localy trying to reach an api call on the same local server (just like engr.ukairo suggested earlier). Even calling directly by ip didn't work.

I decided to try ngrok and it works. Worth it and doesn't take alot of time to configure.

We had a similar issue. My colleague explained that by default, Android/Expo Go does not allow API calls over HTTP. That's why it functions as you said by using ngrok. I think, you still can use HTTP but you need to configure manually it in xml file about restriction.

发布评论

评论列表(0)

  1. 暂无评论