php获取ajax的headers方法与内容实例


Posted in PHP onDecember 27, 2017

1.前端页面

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ko" lang="ko">
<head>
<title>Cross-Browser QRCode generator for Javascript</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no" />
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript" src="qrcode.js"></script>
</head>
<body>
<button class="suning">点击</button>
<script type="text/javascript">
$(".suning").click(function(){
$.ajax({
url: 'headers.php',
data: {'key':'123'},//如果需要字符串json方式,请使用JSON.stringify(setting.data)
type: 'POST',
//dataType: 'json',
//contentType: 'application/json',
//processData: true,//为true不会序列化数据
beforeSend: function () {
// layer.load(2);
},
headers: {
"token":'token7758521'//自定义token及值
},
success: function (responseData) {
console.log(responseData);
},
error: function (error) {
console.log(error);
}
});
});
</script>
</body>

2.php页面

<?php
$arr = get_getallheaders();//获取http头数组
//echo $arr["Token"];//输出Token
var_dump($arr);//输出整个数组
function get_getallheaders() //定义方法
{ 
 foreach ($_SERVER as $name => $value) //循环_SERVER数组
 { 
 if (substr($name, 0, 5) == 'HTTP_') //前5个字符是HTTP_的进入循环
 { 
 $headers[str_replace(' ', '-', ucwords(strtolower(str_replace('_', ' ', substr($name, 5)))))] = $value; 
 //注释
 //substr($name, 5),从$name第5个字符向后截取
 //str_replace('_', ' ',)下划线替换成空格
 //strtolower()全部转换为小写
 //ucwords()首字母转换为大写
 //str_replace(' ', '-',)所有空格替换为-
 } 
 } 
 return $headers; //返回前key前5个字符是HTTP_的数组
 //return $_SERVER; //返回_SERVER数组
}

3.php页面返回的headers

array(11) {
 ["Cookie"]=>
 string(94) "Hm_lvt_f62fa14829605f0d29c05da9c30e045a=1503649309,1503884728; _ga=GA1.1.1091059248.1504832863"
 ["Accept-Language"]=>
 string(14) "zh-CN,zh;q=0.8"
 ["Accept-Encoding"]=>
 string(17) "gzip, deflate, br"
 ["Referer"]=>
 string(62) "http://localhost/DianNaoBengKuiFangYunDuan/qrcode/headers.html"
 ["Token"]=>//自定义token及值
 string(12) "token7758521"
 ["X-Requested-With"]=>
 string(14) "XMLHttpRequest"
 ["Accept"]=>
 string(3) "*/*"
 ["User-Agent"]=>
 string(110) "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36"
 ["Origin"]=>
 string(16) "http://localhost"
 ["Connection"]=>
 string(5) "close"
 ["Host"]=>
 string(9) "localhost"
}

4.原始的headers部分数据

["HTTP_COOKIE"]=>
 string(94) "Hm_lvt_f62fa14829605f0d29c05da9c30e045a=1503649309,1503884728; _ga=GA1.1.1091059248.1504832863"
 ["HTTP_ACCEPT_LANGUAGE"]=>
 string(14) "zh-CN,zh;q=0.8"
 ["HTTP_ACCEPT_ENCODING"]=>
 string(17) "gzip, deflate, br"
 ["HTTP_REFERER"]=>
 string(62) "http://localhost/DianNaoBengKuiFangYunDuan/qrcode/headers.html"
 ["HTTP_TOKEN"]=>//自定义token及值
 string(12) "token7758521"
 ["HTTP_X_REQUESTED_WITH"]=>
 string(14) "XMLHttpRequest"
 ["HTTP_ACCEPT"]=>
 string(3) "*/*"
 ["HTTP_USER_AGENT"]=>
 string(110) "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36"
 ["HTTP_ORIGIN"]=>
 string(16) "http://localhost"
 ["CONTENT_LENGTH"]=>
 string(1) "7"
 ["HTTP_CONNECTION"]=>
 string(5) "close"
 ["HTTP_HOST"]=>
 string(9) "localhost"

以上这篇php获取ajax的headers方法与内容实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHPlet在Windows下的安装
Oct 09 PHP
相对路径转化成绝对路径
Apr 10 PHP
php heredoc和phpwind的模板技术使用方法小结
Mar 28 PHP
php中通过curl模拟登陆discuz论坛的实现代码
Feb 16 PHP
解析dedecms空间迁移步骤详解
May 15 PHP
CodeIgniter图像处理类的深入解析
Jun 17 PHP
PHP根据传入参数合并多个JS和CSS文件的简单实现
Jun 13 PHP
PHP内核学习教程之php opcode内核实现
Jan 27 PHP
自定义min版smarty模板引擎MinSmarty.class.php文件及用法
May 20 PHP
thinkPHP基于ajax实现的菜单与分页示例
Jul 12 PHP
PHPCMS V9 添加二级导航的思路详解
Oct 20 PHP
PHP获取页面执行时间的方法(推荐)
Dec 10 PHP
PHP实现求连续子数组最大和问题2种解决方法
Dec 26 #PHP
PHP基于双向链表与排序操作实现的会员排名功能示例
Dec 26 #PHP
thinkphp5 URL和路由的功能详解与实例
Dec 26 #PHP
php-msf源码详解
Dec 25 #PHP
关于 Laravel Redis 多个进程同时取队列问题详解
Dec 25 #PHP
源码分析 Laravel 重复执行同一个队列任务的原因
Dec 25 #PHP
浅析PHP中的闭包和匿名函数
Dec 25 #PHP
You might like
Thinkphp中的volist标签用法简介
2014/06/18 PHP
Yii1.1中通过Sql查询进行的分页操作方法
2017/03/16 PHP
PHP实现用户登录的案例代码
2018/05/10 PHP
简单JS代码压缩器
2006/10/12 Javascript
最短的javascript:地址栏载入脚本代码
2011/10/13 Javascript
javascript中关于break,continue的特殊用法与介绍
2012/05/24 Javascript
打豆豆小游戏 用javascript编写的[打豆豆]小游戏
2013/01/08 Javascript
JavaScript实现找出数组中最长的连续数字序列
2014/09/03 Javascript
JavaScript实现网页截图功能
2014/10/16 Javascript
Javascript常用字符串判断函数代码分享
2014/12/08 Javascript
JS实现的倒计时效果实例(2则实例)
2015/12/23 Javascript
JS for循环中i++ 和 ++i的区别介绍
2016/07/20 Javascript
简易的JS计算器实现代码
2016/10/18 Javascript
浅谈JavaScript事件绑定的常用方法及其优缺点分析
2016/11/01 Javascript
浅谈js函数三种定义方式 &amp; 四种调用方式 &amp; 调用顺序
2017/02/19 Javascript
ES6下React组件的写法示例代码
2017/05/04 Javascript
微信小程序注册60s倒计时功能 使用JS实现注册60s倒计时功能
2017/08/16 Javascript
Angular4绑定html内容出现警告的处理方法
2017/11/03 Javascript
详解使用jQuery.i18n.properties实现js国际化
2018/05/04 jQuery
判断iOS、Android以及PC端的示例代码
2018/11/15 Javascript
小程序显示弹窗时禁止下层的内容滚动实现方法
2019/03/20 Javascript
在vue中获取wangeditor的html和text的操作
2020/10/23 Javascript
状态机的概念和在Python下使用状态机的教程
2015/04/11 Python
python 多线程串行和并行的实例
2019/02/22 Python
python利用itertools生成密码字典并多线程撞库破解rar密码
2019/08/12 Python
pygame实现贪吃蛇游戏(上)
2019/10/29 Python
让你相见恨晚的十个Python骚操作
2020/11/18 Python
French Connection官网:女装、男装及家居用品
2019/03/18 全球购物
新东方旗下远程教育网站:新东方在线
2020/03/19 全球购物
what is the difference between ext2 and ext3
2013/11/03 面试题
业务内勤岗位职责
2014/04/30 职场文书
总经理岗位职责范本
2015/04/01 职场文书
个人房屋租赁合同(标准范本)
2019/09/16 职场文书
Python快速优雅的批量修改Word文档样式
2021/05/20 Python
Python Pygame实战之塔防游戏的实现
2022/03/17 Python
Mysql中@和@@符号的详细使用指南
2022/06/05 MySQL