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 相关文章推荐
PHP 防注入函数(格式化数据)
Aug 08 PHP
php中数组首字符过滤功能代码
Jul 31 PHP
php导出csv格式数据并将数字转换成文本的思路以及代码分享
Jun 05 PHP
PHP中ini_set与ini_get用法实例
Nov 04 PHP
php准确获取文件MIME类型的方法
Jun 17 PHP
PHP页面转UTF-8中文编码乱码的解决办法
Oct 20 PHP
php pthreads多线程的安装与使用
Jan 19 PHP
分享PHP-pcntl 实现多进程代码
Sep 30 PHP
PHP实现二维数组根据key进行排序的方法
Dec 30 PHP
老生常谈ThinkPHP中的行为扩展和插件(推荐)
May 05 PHP
Laravel框架分页实现方法分析
Jun 12 PHP
php使用fputcsv实现大数据的导出操作详解
Feb 27 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
PHP+DBM的同学录程序(1)
2006/10/09 PHP
PHP生成HTML静态页面实例代码
2008/08/31 PHP
php面向对象全攻略 (十七) 自动加载类
2009/09/30 PHP
PHP5常用函数列表(分享)
2013/06/07 PHP
php 常用算法和时间复杂度
2013/07/01 PHP
php设计模式之单例模式使用示例
2014/01/20 PHP
PHP验证码无法显示的原因及解决办法
2017/08/11 PHP
php 替换文章中的图片路径,下载图片到本地服务器的方法
2018/02/06 PHP
PHP使用redis位图bitMap 实现签到功能
2019/10/08 PHP
Extjs学习笔记之二 初识Extjs之Form
2010/01/07 Javascript
由点击页面其它地方隐藏div所想到的jQuery的delegate
2013/08/29 Javascript
Jquery ajaxStart()与ajaxStop()方法(实例讲解)
2013/12/18 Javascript
js 高效去除数组重复元素示例代码
2013/12/19 Javascript
Iframe 自动适应页面的高度示例代码
2014/02/26 Javascript
jQuery插件分享之分页插件jqPagination
2014/06/06 Javascript
基于jQuery实现选取月份插件附源码下载
2015/12/28 Javascript
浅谈js对象的创建和对6种继承模式的理解和遐想
2016/10/16 Javascript
浅谈javascript中的 “ &amp;&amp; ” 和 “ || ”
2017/02/02 Javascript
用户管理的设计_jquery的ajax实现二级联动效果
2017/07/13 jQuery
vue内置组件transition简单原理图文详解(小结)
2018/07/12 Javascript
Vue2.0生命周期的理解
2018/08/20 Javascript
Vue官方推荐AJAX组件axios.js使用方法详解与API
2018/10/09 Javascript
基于Node的Axure文件在线预览的实现代码
2019/08/28 Javascript
Bootstrap table 实现树形表格联动选中联动取消功能
2019/09/30 Javascript
python导入pandas具体步骤方法
2019/06/23 Python
python 返回一个列表中第二大的数方法
2019/07/09 Python
详解python实现数据归一化处理的方式:(0,1)标准化
2019/07/17 Python
PHP统计代码行数的小代码
2019/09/19 Python
Python for循环搭配else常见问题解决
2020/02/11 Python
python3 sorted 如何实现自定义排序标准
2020/03/12 Python
安装不同版本的tensorflow与models方法实现
2021/02/20 Python
营销总经理岗位职责
2014/02/02 职场文书
《日月潭》教学反思
2014/02/28 职场文书
初中差生评语
2014/12/29 职场文书
2015年班长个人工作总结
2015/04/03 职场文书
小区保洁员岗位职责
2015/04/10 职场文书