vue+thinkphp构建红包页面前后端第四篇

前后端交互部分,首先是涉及到一个js跨域的问题,这里需要在后端解除一下限制。

php的话,需要添加如下代码到文件头部


        header('Access-Control-Allow-Origin:*');
        header('Access-Control-Allow-Methods:POST');
        header('Access-Control-Allow-Headers:x-requested-with,content-type');

在thinkphp里,需要重置一下

    public function _initialize()
    {
        parent::_initialize(); // TODO: Change the autogenerated stub
        header('Access-Control-Allow-Origin:*');
        header('Access-Control-Allow-Methods:POST');
        header('Access-Control-Allow-Headers:x-requested-with,content-type');
    }
然后ajaxReturn将查询结果返回回去,这里,tp会自动将值进行json处理,无需再加一次json_encode.


    public function ajaxRtDate()
    {
        $userid = I('userid');
        //用户电话
        $result =M()->db(2,"mysql://用户名:密码@数据库地址:3306/数据库名")->query("
			aaaaa
		");

        $resArr = array(
            'state'=>'0',
            'data'=>array(),
            'msg'=>''
        );

        if($result[0]['result'] == '0'){
            $resArr['msg']='暂无可领取红包';
        }else{
            $resArr = array(
                'state'=>'1',
                'data'=>$result,
                'msg'=>''
            );
        }


        $this->ajaxReturn($resArr);
    }



随机浏览