React Native Axios发布请求不适用于localhost

时间:2019-06-06 13:46:11

标签: symfony react-native axios

我这里情况很大。 我正在使用Mobx和axios,正在尝试通过localhost上的axios发布请求,该调用将调用我用Symfony制作的api。

这是代码:

@action   异步题字Axios(){

const query = {
  "nom": "Johan11",
  "prenom": "Louap11",
  "email": "jlouap111@email.fr",
  "dateNaissance": "1996-12-11",
  "login": "Leiko9849",
  "password": "mdpLeiko118198"
};

const header =  {
  headers: {
    'Content-Type': 'application/x-www-form-urlencoded'
  }
}

console.log('query', query, header)

await axios
  .post('http://localhost:8000/register', query, header)
  .then(response => {
      console.log('response _inscriptionAxios', response)

    // extendObservable(this._reservation, response.data)
    this._inscription = Object.assign({}, response.data)
  }) 
  .catch ((err) => {
    console.log('Erreur : ' + err)
  })

}

但是我收到此错误响应:“错误:网络错误” 和error.response“未定义”

我试图将“本地主机”更改为我的IP地址,但它不起作用。 我试图将“ localhost”更改为127.0.0.1,但无法正常工作。

我可以使它工作吗?

谢谢男孩

1 个答案:

答案 0 :(得分:0)

  • 首先,如果您使用的是Android模拟器(AVD)或genymotion模拟器,请尝试使用这些IP地址 10.0.2.2 10.0.3.2

  • 如果第一种方法失败,请在终端上尝试以下命令,前提是您的本地服务器本身可以与邮递员一起正常工作。

adb reverse tcp:8000 tcp:8000

在RN Android应用发生之前,我遇到了类似的问题。

我已经在本地设置了golang服务器,但是无法从我的android测试设备发送请求。我发现与本地RN软件包服务器的端口有关。也许您还需要转发本地主机的端口。