我正在尝试解决React-Native项目中IOS上的网络请求失败。当前时刻是我正在尝试发出HTTPS请求以检查Apollo客户端中的授权,并且到处都是我应该在IOS中更改info.plist的答案,但是我已经更改了它,并且仍然出现错误:( 我也尝试在链接中使用IP地址,但是没有用。
请帮我解决它。
client.js
const Login = onError(({error}) => {
console.log(e);
if (error && error.statusCode === 401) {
onLogin();
}
});
const ApolloLink = new HttpLink({ uri: 'https://link', credentials: 'include' });
const Link = Login.concat(ApolloLink);
export default new ApolloClient({
link: Link,
cache: new InMemoryCache(),
});
export function ApolloClient(operation) {
return makePromise(execute(Link, operation));
}
info.plist
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
<key>NSExceptionDomains</key>
<dict>
<key>localhost</key>
<dict>
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<true/>
</dict>
</dict>
</dict>
更新:最终发现,就我而言,这是Webpack的问题。谢谢大家!
答案 0 :(得分:0)
使用此代码代替您的代码,并使用笔记本电脑IP更改127.0.0.1
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
<key>NSExceptionDomains</key>
<dict>
<key>127.0.0.1</key>
<dict>
<key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
<true/>
</dict>
</dict>
</dict>