php curl json post请求_php post请求发送json对象数据参数

网页中发送请求时,大部分情况都参数以键值组合发送数据的,而一些第三方如java开发的接口中需要发送post请求,请求参数为json类型。

既然要发送json数据,首页我们需要在请求头中定义数据类型为json,告诉服务器客服端发送过来的数据类型为json,设置请求头内容类型:Content-Type: application/json; charset=utf-8

php发送post请求的json参数代码,curl实现:<?php

//如果接口返回的数据为json,这里需要先定义数据类型为json

header("Content-type:application/json;charset=utf-8");

$url = "http://zixuephp.net";

$data = array('a'=>'test1','b'=>'test2','c'=>array('1','2','3'));

//这里需要注意的是这里php会自动对json进行编码,而一些java接口不自动解码情况(中文)

//$json_data = json_encode($data,JSON_UNESCAPED_UNICODE);

$json_data = json_encode($data);

//curl方式发送请求

$ch = curl_init();

//设置请求为post

curl_setopt($ch, CURLOPT_POST, 1);

//请求地址

curl_setopt($ch, CURLOPT_URL, $url);

//json的数据

curl_setopt($ch, CURLOPT_POSTFIELDS, $json_data);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

//显示请求头

//curl_setopt($ch, CURLOPT_HEADER, 1);

curl_setopt($ch, CURLINFO_HEADER_OUT, true);

//请求头定义为json数据

curl_setopt($ch, CURLOPT_HTTPHEADER, array(

'Content-Type:application/json;charset=utf-8',

'Content-Length: '.strlen($jsonStr)

)

);

$response = curl_exec($ch);

//echo curl_getinfo($ch, CURLINFO_HTTP_CODE);

//echo curl_getinfo($ch, CURLINFO_HEADER_OUT);

curl_close($ch);

//var_dump($response;)

echo $response;

php发送post请求json数据,curl函数的实现。同理,也可以使用file_get_contents函数进行实现post请求,也能实现上面的功能。

php接收post请求json参数代码,不能再用$_POST方式接收,会接收不到数据,因为现在的内容类型是Content-Type:application/json;charset=utf-8,使用$_POST接收的类型为application/x-www-form-urlencoded或multipart/form-data类型://接收post请求来的json数据

$data = file_get_contents('php://input');

//json转php数组

$data = json_decode($data, true);

var_dump($data);

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/538394.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python删除链表中的最小元素_LintCode Python 入门级题目 删除链表元素、整数列表排序...

删除链表元素&#xff1a;循环列表head&#xff0c;判断当前指针pre.next的val是否等于val&#xff0c;如果是&#xff0c;当前pre重指向pre.next.next&#xff0c;直至pre.next Null# Definition for singly-linked list.# class ListNode:# def __init__(self, x):# self.va…

IDEA 更换主题

1、下载主题文件 百度或者谷歌 IDEA themes 网址有可能会变化。目前是 http://color-themes.com 选择自己喜欢的颜色&#xff0c;下载。 2、导入主题文件 File----Import Setting 导入下载的jar文件&#xff0c;一路确认&#xff0c;idea会自动重启。 3、选择主题 点击…

【CentOS 7笔记】cp、mv、文档查看方式

2019独角兽企业重金招聘Python工程师标准>>> 一. copy 常用cp -r/R #拷贝目录&#xff0c;递归 cp -i #覆盖时会提示&#xff0c;默认项 cp -p #保留源目录或源文件的属性 cp -b #源文目与目的文目建立链接&#xff0c;链接 cp -f #强制覆盖 cp -v …

php 情书,php趣味编程 - php输出笛卡尔情书的秘密

/*笛卡尔情书的秘密心形图案的实现。重点是心形函数ra(1-sin),据说这是笛卡尔死前寄出的最后一封情书内容。这里面隐藏着一个刻骨铭心的秘密&#xff1b;“一生只为等待能手绘这个函数给我的人”*/$width 500;$height 500;header("Content-type: image/gif");$img …

python 月报_python实践--月报分析之获取jira缺陷数据

首先安装jira&#xff0c;同其他第三方库&#xff0c;直接可以 easy_install jira。判断jira是否按转成功输入&#xff1a;from jira import JIRA&#xff0c;如果没有报错则说明安装成功&#xff1b;#连接jirajira JIRA(“http://jira地址”&#xff0c;basic_auth (“用户名…

JAVA中的native

native主要用于方法上&#xff0c;简单介绍如下&#xff1a; 1、一个native方法就是一个Java调用非Java代码的接口。一个native方法是指该方法的实现由非Java语言实现&#xff0c;比如用C或C实现。 2、在定义一个native方法时&#xff0c;并不提供实现体&#xff08;比较像定…

script filename php,PHP $_SERVER['SCRIPT_FILENAME'] 与 __FILE__ 的区别

PHP $_SERVER[SCRIPT_FILENAME] 与 __FILE__通常情况下&#xff0c;PHP $_SERVER[SCRIPT_FILENAME] 与 __FILE__ 都会返回 PHP 文件的完整路径(绝对路径)与文件名&#xff1a;echo SCRIPT_FILENAME 为&#xff1a;,$_SERVER[SCRIPT_FILENAME];echo ;echo __FILE__ 为&#xff1…

015. 深入JVM学习—Java引用类型

2019独角兽企业重金招聘Python工程师标准>>> 1. 引用类型划分 强引用&#xff1a;当内存不足时&#xff0c;JVM宁可出现“OutOfMemoryError”错误停止&#xff0c;也需要进行保存&#xff0c;并且不会将此空间回收。 软引用&#xff1a;当内存不足的时候&#xff0…

python人脸关键点识别_用Face++实现人脸关键点检测

最近看了一篇很有意思的文章 http://matthewearl.github.io/2015/07/28/switching-eds-with-python/ &#xff0c;本来想自己复现一下&#xff0c;后来发现自己太菜&#xff0c;用了一整天只完成了不到一半&#xff0c;最近要找工作了&#xff0c;看书看的有点烦&#xff0c;本…

【东营seo】SEO发展下的大机遇

【东营seo】SEO发展下的大机遇 seo优化越来越难做&#xff0c;很多的人都开始怀疑seo优化没有价值。的确现如今seo优化与十年前比确实不是一个级别的&#xff0c;即便如此&#xff0c;seo优化还是存在其持续发展的机制。  自然搜索排名不再是唯一的竞争点&#xff0c;语音搜索…

手机整屏显示数据php,完美解决手机网页大背景不能铺完整个屏幕的超级代码

html,body{min-height:100%;} 优化 html{min-height:100%;} html,body{min-height:100%;}body{background-image:url(bg_640.jpg);background-size:cover;babackground-repeat:no-repeat;}.main{padding-top:141%;text-align:cenhtml,body{min-height:100%;}优化html{min-heigh…

python linux教程_Python入门系列教程1—linux基础

课程咨询、获取课件、技术交流直接加入博学谷在线学习&#xff1a;631731828课程简介本课程是Python系列入门课程的第一阶段&#xff0c;首先通过介绍不同领域的三种操作系统&#xff0c;操作系统的发展简史以及Linux系统的文件目录结构&#xff0c;让大家对Linux系统有一个简单…

如何解决android studio的模拟器有密码的问题

原文链接&#xff1a;https://jingyan.baidu.com/article/e4d08ffd6a95300fd2f60dcf.html ------------------------ 在使用Android Studio的时候&#xff0c;创建的模拟器开机竟然有密码,提示&#xff1a;to start android,enter your password&#xff0c;困扰了好长时间&am…

为回馈广大学员,智捷课堂买关老师Cocos2d-x课程送Cocos2d-x图书

为回馈广大学员&#xff0c;智捷课堂买关老师Cocos2d-x课程送Cocos2d-x图书 一、凡购买如下课程送一本图书&#xff1a; 1、 Cocos2d-x入门与提高视频教程__Part 22、 Cocos2d-x数据持久化与网络通信__Part 33、 Cocos2d-x架构设计与性能优化内存优化视频教程__Part 44、 Cocos…

java手机音乐文件夹,从原始文件夹打开音乐文件,使用Android上的意图在设备的默认应用程序上播放...

我正在尝试写一个打开设备默认音乐播放器的意图来播放我在android工作室项目中的原始文件夹上的音乐文件(mp3) . 到目前为止&#xff0c;我找到了意图的代码&#xff0c;但我得到了如何命令它打开特定的mp3文件&#xff0c;在媒体播放器上播放到目前为止&#xff0c;我写了这样…

表正在被别的用户或进程使用_linux内核对进程的管理分为两个方面

嵌入式开发直播课 - linux内核通知链 - 创客学院直播室​www.makeru.com.cn众所周知&#xff0c;现在的分时操作系统能够在一个CPU上运行多个程序&#xff0c;让这些程序表面上看起来是在同时运行的。linux就是这样的一个操作系统。在linux系统中&#xff0c;每个被运行的程序实…

android studio生成签名导打包的方法

原文链接&#xff1a;http://blog.csdn.net/l_215851356/article/details/69914213 ---------------------------------如果图片失效了&#xff0c;见有道云笔记------------------- 方法一&#xff1a; 在android中。可以非常快速的生成签名文件.jsk文件。步骤如下&#xff1…

C艹 指针和const的关系和注意事项(非常有意思)

有两种不同的形式将const关键字指向指针。 第一种&#xff1a;让指针指向一个常量对象 const float g_moon 1.63; float * pm &g_moon; // 不允许 no allowed 第二种&#xff1a; 是将指针本身声明为常量 声明一个指向常量的指针pt int age 39; const int *pt &age…

concat php,php基于concat实现无限分类

这篇文章主要介绍了php无限分类使用concat是如何实现的&#xff0c;需要的朋友可以参考下一、数据库设计---- Table structure for table category--CREATE TABLE category (id int(11) NOT NULL auto_increment,catpath varchar(255) default NULL,name varchar(255) default …

vbs脚本延时_Wincc的脚本进程执行问题

接到某同事B的电话&#xff0c;说是一段Wincc里面的VBS脚本出现了问题&#xff1a;A按钮和B按钮&#xff0c;要求A按钮点击后&#xff0c;对plc某变量写1并等待5s后写0&#xff0c;在这5s期间如果点击B按钮&#xff0c;同样是对另外一个变量如此操作&#xff0c;则plc在5s内检测…