thinkphp5.0 CURL用post请求接口数据

Posted 北海北......

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了thinkphp5.0 CURL用post请求接口数据相关的知识,希望对你有一定的参考价值。

    //测试 请求接口
    public function  index(){
        $arr = array(‘a‘=>‘555‘,‘b‘=>56454564);
        $data=$this->post_json_data(json_encode($arr));
        dump(json_decode($data[‘result‘],true));
    }

    //测试 接口
    public function postTest(){
         //显示获得的数据
        if($this->request->isPost()){
            $arr = array(‘a‘=>‘666666‘,‘b‘=>999999);
            return json_encode($arr);
        }

    }
    /*
     * post 发送JSON 格式数据
     * @param $url string URL
     * @param $data_string string 请求的具体内容
     * @return array
     *      code 状态码
     *      result 返回结果
     */
    function post_json_data($url=‘ https://apiproxy-uat.ctripqa.com/apiproxy/soa2/13077/json/orderInfoCallbackV2‘, $data_string) {
        //初始化
        $ch = curl_init();
        //设置post方式提交
        curl_setopt($ch, CURLOPT_POST, 1);
        //设置抓取的url
        curl_setopt($ch, CURLOPT_URL, $url);
        //设置post数据
        curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
        //设置头文件的信息作为数据流输出
        curl_setopt($ch, CURLOPT_HTTPHEADER, array(
                ‘Content-Type: application/json; charset=utf-8‘,
                ‘Content-Length: ‘ . strlen($data_string))
        );
        ob_start();
         //执行命令
        curl_exec($ch);
        $return_content = ob_get_contents();
        ob_end_clean();
        $return_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
        return array(‘code‘=>$return_code, ‘result‘=>$return_content);
    }

 个人记录一下哈

以上是关于thinkphp5.0 CURL用post请求接口数据的主要内容,如果未能解决你的问题,请参考以下文章

210629:Linux中使用curl命令发送带参数的get请求和post请求-Redis中常用命令

php用curl调用接口方法,get和post两种方式

php post 请求https接口

44.curl发布带body的post请求

php模拟post提交请求,curl调用接口

微信小程序 request请求封装