zoukankan      html  css  js  c++  java
  • PHP获取原始http请求headers和body

    目的

    为什么要获取原始的http请求的头部和body呢?php内置对象$_SERVER,$_POST,$_GET,$_COOKIE等不就是为了简化处理原始头部而抽象出来的对象吗?

    一般的应用场景而言,的确不需要原始头部信息,但是如果需要定位bug(如cookie异常丢失),或者分析用户的行为,如主流用户的客户端版本(IE,FF,Chrome或其他),那么获取原始的请求有助于数据分析。下面介绍两种方法,作为备忘,方法1本人已经实验证明可行。

    方法1

    • apache_request_headers,此函数返回headers的关联数组,必须在apahce下
    • @file_get_contents('php://input'),此方法返回body。

    参考这里:http://stackoverflow.com/a/10751214

    方法2

    采用pecl_http扩展中的相关api,这个扩展不在php自带的扩展中,需要另行下载

    • http_get_request_headers,返回值与apache_request_headers一样
    • http_get_request_body或http_get_request_body_stream,具体用法参见php手册
  • 相关阅读:
    2017 ICPC beijing E
    1629 B君的圆锥
    1298 圆与三角形
    通过String获取字符数组
    Java中的代码点与代码单元
    数据库事务隔离级别
    oracle修改密码、添加用户及授权
    Python起航
    软件测试常见概念
    TestNG--@Factory
  • 原文地址:https://www.cnblogs.com/bourneli/p/2818655.html
Copyright © 2011-2022 走看看