php {template header},php通过header发送自定义数据
发送header:
我们定义了三个参数,token、language、region,放入header发送过去
<?php $url = 'http://www.example.com';$header = array('token:JxRaZezavm3HXM3d9pWnYiqqQC1SJbsU','language:zh','region:GZ');$content = array( 'name' => 'fdipzone');$response = tocurl($url, $header, $content);$data = json_decode($response, true);echo 'POST data:';echo '
';
print_r($data['post']);echo '
';echo 'Header data:';echo '
';
print_r($data['header']);echo '
';/**
* 发送数据
* @param String $url 请求的地址
* @param Array $header 自定义的header数据
* @param Array $content POST的数据
* @return String
*/function tocurl($url, $header, $content){
$ch = curl_init(); if(substr($url,0,5)=='https'){
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 跳过证书检查
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, true); // 从证书中检查SSL加密算法是否存在
}
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($content)); $response = curl_exec($ch); if($error=curl_error($ch)){ die($error);
}
curl_close($ch); return $response;
}?>123456789101112131415161718192021222324252627282930313233343536373839404142434445
接收header
我们可以在$_SERVER中获取header数据,自定义的数据都是使用HTTP_作为前缀的,所以可以把HTTP_前缀的数据读出。
header('content-type:application/json;charset=utf8');echo json_encode($ret, JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT);/**
* 获取自定义的header数据
*/function get_all_headers(){
// 忽略获取的header数据
$ignore = array('host','accept','content-length','content-type'); $headers = array(); foreach($_SERVER as $key=>$value){ if(substr($key, 0, 5)==='HTTP_'){ $key = substr($key, 5); $key = str_replace('_', ' ', $key); $key = str_replace(' ', '-', $key); $key = strtolower($key); if(!in_array($key, $ignore)){ $headers[$key] = $value;
}
}
} return $headers;
}?> 1234567891011121314151617181920212223242526272829303132333435363738
输出:
POST data:Array(
[name] => fdipzone
)
Header data:Array(
[token] => JxRaZezavm3HXM3d9pWnYiqqQC1SJbsU
[language] => zh
[region] => GZ
)
php {template header},php通过header发送自定义数据相关推荐
- PHP发送数据到指定方法,php通过header发送自定义数据方法_php技巧
下面小编就为大家分享一篇php通过header发送自定义数据方法,具有很好的参考价值,希望对大家有所帮助.一起跟随小编过来看看吧 本文将介绍如何通过header发送自定义数据.发送请求时,除了可以使用 ...
- php自定义请求headers,php通过header发送自定义数据方法
本文将介绍如何通过header发送自定义数据.发送请求时,除了可以使用$_GET/$_POST发送数据,也可以把数据放在header中传输过去. 发送header: 我们定义了三个参数,token.l ...
- java/kafka的使用,生产者 ,发布/发送消息,自定义数据/json数据,实战。
kafka(卡夫卡生产者)的使用. 发送JSON数据请查看:kafka发送JSON消息,接受JSON消息 一,创建生产者 MyProducer.java . package com.kuxingsen ...
- postman登录获取token,接口header中添加token发送请求
[Postman]登录获取token,接口header中添加token发送请求 说明 开始 说明 该文章只是用于记录,防止自己忘记. 开始 1.准备登录接口 2.添加全局变量 3.添加一个登录接口,登 ...
- html设置 header,http设置header
在阅读本文前,大家要有一个概念,在实现正常的TCP/IP 双方通信情况下,是无法伪造来源 IP 的,也就是说,在 TCP/IP 协议中,可以伪造数据包来源 IP ,但这会让发送出去的数据包有去无回,无 ...
- AVC sequence header AAC sequence header
推送H.264和AAC的重要前提 RTMP的音视频流的封装形式和FLV格式相似, 流媒体服务器向客户端发送包含H264和AAC的RTMP直播流,需要首先发送: AVC sequence header ...
- 两封邮件合并转发_用Python发送自定义电子邮件
电子邮件仍然是生活中的一个事实.尽管存在各种缺陷,但它仍然是向大多数人发送信息的最佳方式,尤其是以允许消息排队等待收件人的自动化方式. 我的工作重点之一是Feddora社区行动和影响协调员给人们一个关 ...
- 使用Python发送自定义电子邮件
电子邮件仍然是事实. 尽管存在各种弊端,但它仍然是向大多数人发送信息的最佳方法,特别是允许邮件排队等待收件人的自动方式. Fedora社区行动与影响协调员正在为人们提供有关差旅资金的好消息. 我经常通 ...
- 用c#实现通讯中自定义发送序列化数据,可一定程度上实现可编程发送的功能
C#实现串口发送序列化数据 如下图: 其中红色框内展现的为实现效果图,其中最前面的文本框是要发送的具体字节,可以手动修改,后面的按钮为单击可控制单次发送,同时双机要发送的文本框可修改按钮的标题,用于做 ...
最新文章
- [转]linux文件同步工具Unison的使用
- java随机点名器的思路_Java实现简单的随机点名器
- C++用Tarjan 算法寻找桥(附完整源码)
- 使用View的getWidth(),getHeight()方法返回0的问题
- TypeScript基础入门 - 接口 - 可索引的类型
- adf开发_ADF:动态视图对象
- FreeModbus保持寄存器
- PHP Socket编程(转)
- oracle 表名拼接_Oracle之3种表连接方式(排序合并连接、嵌套循环、哈希连接)...
- python初学者教程下载_初学者Python教程
- 高通audio数据到Speaker播放流程
- iptables快速记忆总结
- 深度学习入门代码详解(附代码)
- 《深入浅出统计学》笔记二--第二章:集中趋势的量度,第三章:分散性与变异性的量度
- Himawari-8葵花8标准数据(HSD)文件命名规则
- php直播源码平台开发过程中使用第三方sdk
- 股票涨跌的心理学原理: 过度反应理论
- Android Studio 3.5 怎样获取MD5签名
- 深度学习之语义分割unet算法解读
- 关于我国十进制网络安全地址投入使用