php中 curl模拟post 发送json并接收json

本地模拟请求服务器数据,请求数据格式为json,服务器返回数据也是json. 由于需求特殊性, 如同步客户端的批量数据至云端, 提交至服务器的数据可能是多维数组数据了.  这时需要将此数据以一定的数据编码方式(json格式)来组织并提交.以便服务器很好地处理.

操作方法

  • 01

    客户端curl模拟提交代码. function http($url, $data = NULL, $json = false) { $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); if (!empty($data)) { if($json && is_array($data)){ $data = json_encode( $data ); } curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $data); if($json){ //发送JSON数据 curl_setopt($curl, CURLOPT_HEADER, 0); curl_setopt($curl, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json; charset=utf-8', 'Content-Length:' . strlen($data)) ); } } curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $res = curl_exec($curl); $errorno = curl_errno($curl); if ($errorno) { return array('errorno' => false, 'errmsg' => $errorno); } curl_close($curl); return json_decode($res, true); } 参数说明:$url: 服务器接收处理url$data: 数组形式的post数据$json: 是否以json方式提交(1: 是, 0:否)

  • 02

    服务器端获取post数据代码: print_r($_POST); 最后获取到的数据是空值.

  • 03

    上网搜索了一下发现PHP默认只识别application/x-www.form-urlencoded标准的数据类型,修改头信息也没有结果…只能通过以下方式获得数据 //第一种方法$post = $GLOBALS[‘HTTP_RAW_POST_DATA’];//第二种方法$post = file_get_contents(“php://input”); 最后修改后,数据才能接收到.

(0)

相关推荐

  • Excel工作表中使用模拟运算表的方法

    Excel工作表中使用模拟运算表的方法 1.创建一个新的Excel工作表,并在工作表输入数据.在B9单元格中输入提成金额的计算公式"=$B$2*$B$3",如图1所示. 图1 创建 ...

  • 微信朋友圈中的视频怎么发送给好友?

    朋友圈里别人的小视频怎么转发给自己朋友圈呢?特别是有一些重大会议,如何假装自己在现场,把小视频转到自己的朋友圈呢?软件明显可以操作,今天告诉大家一种小方法,不用软件也可以转发视频到自己的朋友圈. 微信 ...

  • 如何在电脑端QQ群中禁止群成员发送图片?

    相信很多小伙伴都有在使用电脑QQ,在QQ群中如何才能禁止群成员发送图片呢?方法很简单,下面小编就来为大家介绍.具体如下:1. 首先,打开电脑上的"QQ"并登录.2. 进入主界面后, ...

  • 如何使用小米手机中的模拟实体门卡功能添加学生卡?

    相信很多小伙伴都有在使用小米手机,其中的模拟实体门卡功能如何才能用来添加学生卡呢?方法很简单,下面小编就来为大家介绍.具体如下:1. 首先,打开手机上的"小米钱包".2. 进入首页 ...

  • 怎么在微博中拒收某个好友发送的信息?

    许多小伙伴在刷微博的时候会关注一些好友,有一些好友可能会借助这个平台发送一些小广告,那我们想要把这些信息屏蔽掉,不接受他们的信息应该如何操作呢?今天,小编就教大家在微博中拒收某个好友发送的信息.具体如 ...

  • 如何在Word中设置“给别人发送文件时其中字体不变”?

    相信很多小伙伴在日常办公中都会用到Word,在其中如何才能设置给别人发送文件时其中字体不变呢?方法很简单,下面小编就来为大家介绍.具体如下:1. 首先,打开电脑上的Word.进入后,点击左上角的&qu ...

  • 如何在电脑中打开QQ好友发送的图片保存的文件夹

    有的小伙伴在使用QQ软件与好友聊天时,想要保存好友发送的图片,但是如果一张一张保存,那就太麻烦了,所以可以直接在好友发送的图片保存的文件夹中保存,却不知道如何打开该文件夹,那么小编就来为大家介绍一下吧 ...

  • 微信中如何给好友发送拜年红包

    随着春节的临近,红包又开始发起来了,今天给大家介绍一下微信中如何给好友发送拜年红包的具体操作步骤.1.解锁手机后,找到桌面上的[微信]APP,打开进入.2. 然后在微信页面,找到想要发送拜年红包的好友 ...

  • 如何在微信中设置通过回车键发送消息

    有的小伙伴在电脑上使用微信软件时,为了快速发送消息,因此想要设置通过回车键发送消息,但是却不知道如何设置,那么小编就来为大家介绍一下吧.具体如下:1. 第一步,双击或者右击打开微信软件,接着使用扫码来 ...