我使用外部托管的Django python框架创建了一个API端点.我可以从浏览器(mydomain.com/endpoint/)访问我的端点,并验证没有错误.当我在开发机器(localhost:8000/endpoint/)上本地运行测试django服务器时也是如此.当我使用localhost作为端点时,我的json数据会毫无问题地通过.当我使用我的生产域时,axios会遇到一个网络错误,并且它没有提供多少上下文...从调试控制台,我得到了以下信息:

Error: Network Error
    at createError (createError.js:16)
    at XMLHttpRequest.handleError (xhr.js:87)
    at XMLHttpRequest.dispatchEvent (event-target.js:172)
    at XMLHttpRequest.setReadyState (XMLHttpRequest.js:554)
    at XMLHttpRequest.__didCompleteResponse (XMLHttpRequest.js:387)
    at XMLHttpRequest.js:493
    at RCTDeviceEventEmitter.emit (EventEmitter.js:181)
    at MessageQueue.__callFunction (MessageQueue.js:353)
    at MessageQueue.js:118
    at MessageQueue.__guardSafe (MessageQueue.js:316)

这是我在react-native 组件中的axios调用:

    componentDidMount() {
        axios.get('mydomain.com/get/').then(response => {  // localhost:8000/get works
            this.setState({foo:response.data});
        }).catch(error => {
            console.log(error);
        });
    }

推荐答案

在iOS中,未加密的网络请求似乎在默认情况下被阻止,即https个可以工作,http个不能.

From the docs:

默认情况下,iOS将阻止任何未使用SSL加密的请求.

React-native相关问答推荐

复制__自持props

'无法解析模块.安装react-native-pager-view后的实用程序/平台

单击react 本机时如何从同一屏幕更改内容

将值从一个 js 文件传递​​到 react native 中的另一个 js 文件:react native

从 React 原生 Js 代码调用 Android Native UI 组件方法

React Native 响应式图像宽度,而图像的宽度/高度比保持不变

react-native-snap-carousel 无法正确渲染

Eslint 错误,configuration for rule "import/no-cycle" is invalid

如何在 React Native cli 中获取 SHA-1 密钥?

react native图像不适用于特定 URL

如何在 Text ReactNative 中包含 TouchableOpacity

React Native 得到这个错误'Unrecognized operator abs'

React Native - 为什么执行这个函数?

无法解析模块react-navigation

在 navigator pop 上react Native Pass 属性

Android Log

react-native iOS 应用在部署后不显示静态/本地资源

加载字体native-base 错误

如何在 React Native 中创建拖放操作?

React Native 的最佳文件 Select 器