PHP Json POST Server&Client

原创 2015年11月20日 12:34:01

class IndexController extends Controller {

	/**
	 */
	public function index() {
		$body = $this->getRawBody();
		$jsonArray = json_decode($body,true);
		if(($jsonArray['name'] == 'bizcndomaintrade') && ($jsonArray['password'] == 'Aa654123')) {
			$dao = D('Users');
			$userInfo = $dao->where(array('user_name'=>$jsonArray['checkname'] ))->find();
			if(empty($userInfo))
				$this->ajaxReturn(array('status'=>530,'msg'=>'用户不存在' ),'JSON',JSON_UNESCAPED_UNICODE);
			$affectRowCount = $dao->where(array('user_id'=>$userInfo['user_id'],'partner_id'=>$userInfo['bindingid'] ))->delete();
			if(!$affectRowCount) {
				$this->ajaxReturn(array('status'=>200,'msg'=>'unbind success.' ));
			}
			$this->ajaxReturn(array('status'=>532,'msg'=>'bind failure.' ));
		}
		else {
			$this->ajaxReturn(array('status'=>531,'msg'=>'requester is not auth .' ));
		}
	}
	
	protected function getRawBody() {
		return $body = file_get_contents('php://input');
	}
	
	public function post() {
		$url = 'http://www.domaintrade.com/servicex/index/index/';
		$jsonArray = array(
			'name'=>'bizcndomaintrade',
			'password'=>'Aa654123',
			'checkname'=>'jie',
			'bindingid'=>'1'
		);
		$headers = array(
				"POST ".$url." HTTP/1.1",
				"Content-type: text/xml",
				"Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",
				"Cache-Control: no-cache",
				"Pragma: no-cache",
		);
		$timeout = 300;
		$post = json_encode($jsonArray);
		if (function_exists('curl_init')) {
			$ch = curl_init();
			curl_setopt($ch, CURLOPT_URL,$url);
			curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
			curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
			curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
			curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
			curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,false); // don't check certificate
			curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false); // don't check certificate
			curl_setopt($ch, CURLOPT_SSLVERSION, 4);
			curl_setopt($ch,CURLOPT_HEADER,false); // true Return the HTTP headers in string
			curl_setopt($ch,CURLOPT_RETURNTRANSFER,true); // a true curl_exec return content
			if ($post) {
				curl_setopt($ch, CURLOPT_POST, 1);
				if (is_array($post)) {
					$post = http_build_query($post);
				}
				curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
			}
			$successs = 1;
			$contents = curl_exec($ch);
			if(!$contents) {
				$successs = 0;
			}
			curl_close($ch); // close curl resource
			echo $contents;
		}
	}
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

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

本地模拟请求服务器数据,请求数据格式为json,服务器返回数据也是json. 由于需求特殊性, 如同步客户端的批量数据至云端, 提交至服务器的数据可能是多维数组数据了. 这时需要将此数据以一定的数据...
  • pangchengyong0724
  • pangchengyong0724
  • 2016年08月03日 15:19
  • 10566

在PHP中怎么接收post过来的JSON数据

php 接收post json
  • cjf1002361126
  • cjf1002361126
  • 2017年05月24日 22:52
  • 2347

php 模拟post json数据,并进行解析

function Query_Version($url, $data_string,$token) { $ch = curl_init(); curl_setop...
  • fly__high
  • fly__high
  • 2015年05月07日 11:49
  • 1036

php-curl(模拟post,设置header,接收json数据)

curl可以使用url的方式来模拟浏览器传输数据,是很有用的一个功能。curl的操作可以分为4步:1、初始化:curl_init() 2、设置属性值:curl_setopt() 3、执行:curl_e...
  • ljl890705
  • ljl890705
  • 2016年08月16日 12:02
  • 6387

解决PHP无法通过$_POST接收到AngularJS的post数据的解决方法

在使用AngularJS $http.post()的时候,PHP如果通过$_POST来获取值,那么它获取到的将会是空值。而如果是用jquery来进行post传递,却不会这个问题。这是为什么呢?这是因为...
  • meitesiluyuan
  • meitesiluyuan
  • 2016年04月27日 17:59
  • 4161

php实现post请求 接收android客户端json数据 存储数据库 并返回json

php实现post接口 接收android客户端json数据 存储数据库 并返回json大纲实现php端存储数据库类 实现php端接收post数据 实现php端返回json数据实现android ...
  • qq_14995933
  • qq_14995933
  • 2016年06月14日 19:13
  • 4911

thinkphp ,php post发送json请求,就收post请求

发送方的代码如下
  • u011447828
  • u011447828
  • 2017年03月15日 16:46
  • 2095

php处理json数据(从服务器获取,post提交)

  • qq_16558621
  • qq_16558621
  • 2016年02月29日 18:34
  • 3963

ecshop AJAX-POST 多维JSON 数据给PHP处理的方法

function commit(){ var uid =0; if ( document.getElementById("user_useridname").checked){ uid =...
  • oqqbob123456
  • oqqbob123456
  • 2014年04月26日 19:43
  • 944

PHP中利用jQuery操作json格式数据,实现$_POST的数据传输和接收

PHP中利用jQuery操作json格式数据,实现$_POST的数据传输和接收 首先认识jQuery的语法格式: $("#sub").click(function(){ $.pos...
  • haibusoi
  • haibusoi
  • 2014年09月24日 23:33
  • 1900
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PHP Json POST Server&Client
举报原因:
原因补充:

(最多只允许输入30个字)