dso407787736 2019-02-14 11:21
浏览 190
已采纳

React Native POST数据到API无法正常工作

I get Notice: Undefined index response when i post data to php API using FormData in React Native. But when i hard code parameters in the php file i am able to get results.

I have tried using JSON.stringify from React docs. I get same problem. On the server side i tried suggested file_get_contents('php://input') which just returns null.

  var data = new FormData();
  data.append({
    latitude: '55555',
    longitude: '9999',
  });

fetch('http://localhost/someapi', {
    method:'POST',
    headers:{
        'Accept':'application/json',
        'Content-Type': 'multipart/form-data',
        'Content-length': data.length
    },
    body: data
    })
    .then((response)=>response.text())
    .then((response)=>{
        console.log('  Show response');
        console.log(response);
    })
    .catch((err)=>{
        console.warn(err);
    });

I am using response.text() so i can display the error. otherwise response.json() gives me Unexpected token < because it returns html

Here is my PHP server code

 $lat =  $_POST['latitude'];
 $lng =  $_POST['longitude'];
 echo json_encode($lat);

I also tried

 $json = file_get_contents('php://input');
 $obj = json_decode($json, TRUE);
 echo $obj;
  • 写回答

1条回答 默认 最新

  • douwendu2460 2019-02-14 11:36
    关注

    you are passing 'multipart/form-data' header , so you have to pass formdata to body instead of JSON.stringify

     var formData = new FormData();
     formData.append('latitude', 55555);
     formData.append('longitude', 9999);
    
    fetch('http://localhost/someapi', {
        method:'POST',
        headers:{
            'Accept':'application/json',
            'Content-Type': 'multipart/form-data'
        },
        body: formData
        })
        .then((response)=>{
            console.log('Response ==>',response);
        })
        .catch((err)=>{
            console.warn(err);
        });
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 三菱伺服电机按启动按钮有使能但不动作
  • ¥20 为什么我写出来的绘图程序是这样的,有没有lao哥改一下
  • ¥15 js,页面2返回页面1时定位进入的设备
  • ¥200 关于#c++#的问题,请各位专家解答!网站的邀请码
  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号