perl - 在 Perl 中从 HTTP 请求中提取 header

标签 perl header

我想在我的 perl 脚本中读取 http 或 https 请求中的 header :

#!/usr/bin/perl
use LWP::UserAgent;
my $ua = new LWP::UserAgent;
my $url = "http://example.com/";
my $req = $ua->get("$url");

我想提取上层请求的headers数据如:

HTTP/1.1 200 OK
Access-Control-Allow-Headers: accept, origin, content-type, content-length
Access-Control-Allow-Methods: GET,PUT,POST,DELETE,OPTIONS
Access-Control-Allow-Origin: *
Content-Encoding: gzip
Content-Type: application/javascript
Date: Thu, 28 Apr 2016 01:43:01 GMT
Etag: "779429019"
Cookie: username=usrname; pass=P@S$W0RD;
X-Powered-By: adzerk bifrost/
x-served-by: engine-i-536776c8

最佳答案

请注意,您的$req 实际上是一个response 对象,而不是请求

要检查所有 header 字段,您正在寻找 $resp->headers_as_string

要生成您显示的输出,您可以这样写

#!/usr/bin/perl

use LWP::UserAgent;

my $ua = new LWP::UserAgent;
my $url = 'http://example.com/';

my $resp = $ua->get($url);

print $resp->protocol, ' ', $resp->status_line, "\n";
print $resp->headers_as_string, "\n";

关于perl - 在 Perl 中从 HTTP 请求中提取 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36903905/

相关文章:

perl - 如何回读 Data::Dumper 的输出?

linux - 如何在 telnet 客户端上实现命令历史记录? (向上/向下箭头)

c++ - 非类类型成员getName请求错误 'char'

visual-studio-2010 - 从现有头文件编写 cpp 文件以运行测试程序。存在错误

javascript - 为什么将 JavaScript 放在页面的页脚中?

c++ - 编译器喊出文本 ">"是意外的 C++ XLC

json - 在 Perl 中访问嵌套的 JSON 元素

string - Perl 的默认字符串编码和表示

c++ - 如何使用haskell从c++头文件中提取函数?

perl - 脚本中的标题格式错误。错误 header =<!DOCTYPE html>