thinkphp3.2 后台接收安卓前端传参出问题(取不到参数数据)

场景: thinkphp3.2.3 后台接口为非url传参,前端说是用post传参的
问题描述:接口取不到参数数据,用 I()函数,$_GET,$_REQUEST,$_POST等都取不 到数据
原因:一个PHP老同事也遇到过相同问题。原因后面详述
解决:后台用
$data = file_get_contents("php://input");
来获取前端传来的参数
功能整体代码如下:

/**
     * 前端扫描二维码,查询产品信息及相关厂家信息
     * @param  {string} $itemId
     * @return {json} $data $info $status
    */
public function getItemInfo()
{
        //url传参接收(这是以前接受不到参数的代码,注释掉了,方便大家对比)
        //$tid = I('itemId');
        //$uid = I('uid');
        //$location = I('location');

         //安卓前端 传参接收(这是后来改用的接收参数的代码)
         $tmp = file_get_contents("php://input");
         $arr = json_decode($tmp,true);
         $tid = $arr['itemId'];
         $uid = $arr['uid'];
         $location = $arr['location'];

        if(!$uid) $uid = 'unreg';//未传用户uid,默认设置 为 uid = 'unreg'的用户

        if(!$tid){

            $this->error('扫描出错',0);
        }
        //后面代码省略,都是功能性代码了...
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值