React Native / Expo iOs - 网络请求因我的 Api 上的 Fetch 而失败
Posted
技术标签:
【中文标题】React Native / Expo iOs - 网络请求因我的 Api 上的 Fetch 而失败【英文标题】:React Native / Expo iOs - Network Request Failed with Fetch on my Api 【发布时间】:2020-02-04 13:02:20 【问题描述】:首先:我浏览了很多(很多)关于这个问题的帖子,对它们都进行了测试,但似乎我被诅咒了,或者类似的东西?
我正在 iO 上使用 LAN 方法进行博览会。 我支持.Net Core 3。 我的 iPhone 和我的电脑在同一个 Wifi 上。 我的电脑正在运行我的 .Net 后台服务器。
我发现本地主机无法由 expo/react-native 处理。因此,我尝试了 IP 地址方法并更改了我的背面地址和正面试图获取的地址。 尝试了带有 expo 的 infoPlist。用我的 .Net 服务器尝试了一些我不完全理解的神秘事物。还试图关闭我的防火墙,它没有改变任何东西。 好吧,我不习惯发帖,因为现有帖子经常回答我的问题。
这是我的获取方法的代码:
export async function callPlanning()
try
let response = await fetch(
"http://my.Ipv4.adress:myApiPort/myRoute",
);
let responseJson = await response.json();
return responseJson;
catch (error)
console.error(error);
我的 Api 在 Postman 上运行良好。 我可以在我的应用程序中使用此功能调用 facebook 测试 api。
这是我调用此获取函数的应用代码:
export default class BetaserieScreen extends Component
constructor(props)
super(props)
this.state=
response: null,
;
this.askPlanning = this.askPlanning.bind(this);
askPlanning = () =>
this.setState(
response: Back.callPlanning(),
)
render()
return (
<View style=styles.MainContainer>
<Text> Beta Serie </Text>
<TouchableHighlight onPress=this.askPlanning>
<Text>Planning</Text>
</TouchableHighlight>
</View>
);
如果您看到任何可以回答我的问题或关于我的代码的内容:我会接受的。 我已经解决了2天,我必须找到解决方案...... 如果您需要有关我的系统或有关我的项目的文件的任何其他信息,如果您认为可以帮助我解决此问题,请随时提出要求。
我会很高兴的。
【问题讨论】:
【参考方案1】:原因是ios默认阻塞了http协议的请求 在这里签到https://reactnative.dev/docs/network
【讨论】:
以上是关于React Native / Expo iOs - 网络请求因我的 Api 上的 Fetch 而失败的主要内容,如果未能解决你的问题,请参考以下文章
使用 React Native + Expo 时,iOS API 在哪里访问?
facebook登录错误,react-native ios expo
React Native / EXPO / iOS Simulator Stuck @ 'Downloading Javascript Bundle 100%'