Mojo::Headers-HTTP头
使用Mojo::标题;#分析my$headers=Mojo::headers->new;$headers->parse(“内容长度:42\x0d\x0a”);$headers->parse(“内容类型:text/html\x0d\x0a\x0d\x0a”);说$headers->content_length;说$headers->content_type;#生成my$headers=Mojo::headers->new;$headers->content_length(42);$headers->content_type('text/plain');比如$headers->to_string;
Mojo::标题是HTTP标头的容器,基于射频7230和副本请求7231.
Mojo::标题实现以下属性。
我的$size=$headers->max_line_size;$headers=$headers->max_line_size(1024);
最大标题行大小(以字节为单位),默认为MOJO_MAX_LINE_SIZE(莫约_最大_线条_尺寸)
环境变量或8192
(8KiB)。
my$num=$headers->max_lines;$headers=$headers->max_lines(200);
最大标题行数,默认为MOJO_MAX_线
环境变量或100
.
Mojo::标题从继承所有方法Mojo::基础并实现了以下新功能。
$headers=$headers->add(Foo=>“一个值”);$headers=$headers->add(Foo=>“第一个值”,“第二个值”);
添加带有一行或多行的页眉。
#“Vary:接受#变化:接受编码“$headers->add(Vary=>'Accept')->add(Vary=>'Accept-Encoding')->to_string;
$headers=$headers->append(变量=>“接受编码”);
将值附加到标题并在必要时展平。
#“变化:接受”$headers->append(Vary=>“Accept”)->to_string;#变化:接受,接受编码$headers->vary('Accept')->append(vary=>'Accept-Encoding')->to_string;
我的$clone=$headers->克隆;
返回新的Mojo::标题从这些标头克隆的对象。
$headers=$headers->dehop;
删除不应重新传输的逐跃点标头。
my$all=$headers->every_header(“位置”);
类似“标题”,但返回与数组引用同名的所有标头。
#获取第一个标题值比如$headers->every_header('Location')->[0];
$headers=$headers->from_hash({'Cookie'=>'a=b'});$headers=$headers->from_hash({'Cookie'=>['a=b','c=d']});$headers=$headers->from_hash({});
解析哈希引用中的标头,空哈希将删除所有标头。
my$value=$headers->header('Foo');$headers=$headers->header(Foo=>“一个值”);$headers=$headers->header(Foo=>“第一个值”,“第二个值”);
获取或替换当前标题值。
我的$bool=$headers->is_finished;
检查标头分析器是否完成。
我的$bool=$headers->is_limit_exceeded;
检查标头是否超过“最大行大小”或“最大行数”.
my$bytes=$headers->剩余项;
从标头分析器中获取并删除剩余数据。
my$names=$headers->names;
返回具有当前定义的所有标头的数组引用。
#所有标题的名称表示@{$headers->names};
$headers=$headers->parse(“内容类型:text/plain\x0d\x0a\x0d\x0a”);
分析格式化的标头。
$headers=$headers->remove('Foo');
拆下收割台。
我的$single=$headers->tohash;我的$multi=$headers->tohash(1);
将标头转换为散列引用,默认情况下禁用表示同名多个标头的数组引用。
说$headers->to_hash->{DNT};
我的$str=$headers->to_string;
将标头转换为适合HTTP消息的字符串。
此外,还提供了以下快捷方式,用于访问和操作常用标题:
my$accept=$headers->accept;$headers=$headers->accept('application/json');
获取或替换当前标题值接受
收割台。
我的$charset=$headers->accept_charset;$headers=$headers->accept_charset('UTF-8');
获取或替换当前标题值接受Charset
收割台。
my$encoding=$headers->accept_encoding;$headers=$headers->accept_encoding('gzip');
获取或替换当前标题值接受编码
收割台。
my$language=$headers->accept_language;$headers=$headers->accept_language('de,en');
获取或替换当前标题值接受语言
收割台。
my$ranges=$headers->accept_ranges;$headers=$headers->accept_ranges(“字节”);
获取或替换当前标题值接受范围
收割台。
我的$origin=$headers->access_control_allow_origin;$headers=$headers->access_control_allow_origin('*');
获取或替换当前标题值访问控制-允许源
标题来自跨源资源共享.
my$allow=$headers->allow;$headers=$headers->allow('GET,POST');
获取或替换当前标题值允许
收割台。
my$authorization=$headers->授权;$headers=$headers->授权('Basic Zm9vOmJhcg==');
获取或替换当前标题值授权
收割台。
我的$cachecontrol=$headers->cachecontol;$headers=$headers->cache_control('max-age=1,no-cache');
获取或替换当前标题值控制缓存
收割台。
我的$connection=$headers->connection;$headers=$headers->连接(“关闭”);
获取或替换当前标题值连接
收割台。
my$disposition=$headers->content_disposition;$headers=$headers->content_disposition('foo');
获取或替换当前标题值内容-部署
收割台。
my$encoding=$headers->content_encoding;$headers=$headers->content_encoding('gzip');
获取或替换当前标题值内容编码
收割台。
my$language=$headers->content_language;$headers=$headers->content_language('en');
获取或替换当前标题值内容-语言
收割台。
my$len=$headers->content_length;$headers=$headers->content_length(4000);
获取或替换当前标题值内容物-长度
收割台。
my$location=$headers->content_location;$headers=$headers->content_location('http://127.0.0.1/foo');
获取或替换当前标题值内容-位置
收割台。
my$range=$headers->content_range;$headers=$headers->content_range('字节2-8/100');
获取或替换当前标题值内容范围
收割台。
my$policy=$headers->content_security_policy;我的$policy=$headers->content_security_policy;$headers=$headers->content_security_policy('default-src https:');
获取或替换当前标题值内容安全策略
标题来自内容安全策略1.0.
my$type=$headers->content_type;$headers=$headers->content_type('text/plain');
获取或替换当前标题值内容类型
收割台。
我的$cookie=$headers->cookie;$headers=$headers->cookie('f=b');
获取或替换当前标题值Cookie饼干
标题来自副本请求6265.
我的$date=$headers->date;$headers=$headers->date('2008年8月17日,星期日,16:27:35 GMT');
获取或替换当前标题值日期
收割台。
我的$dnt=$headers->dnt;$headers=$headers->dnt(1);
获取或替换当前标题值DNT公司
(Do Not Track)标头,它还没有规范,但非常常用。
我的$etag=$headers->etag;$headers=$headers->etag(“abc321”);
获取或替换当前标题值电子标签
收割台。
my$expect=$headers->expect;$headers=$headers->expect('100-continue');
获取或替换当前标题值期望
收割台。
我的$expires=$headers->expires;$headers=$headers->过期('Thu,1994年12月1日16:00:00 GMT');
获取或替换当前标题值到期
收割台。
my$host=$headers->host;$headers=$headers->host('127.0.0.1');
获取或替换当前标题值主机
收割台。
我的$date=$headers->if_modified_sine;$headers=$headers->if_modified_sine('2008年8月17日星期日16:27:35 GMT');
获取或替换当前标题值If-修改自
收割台。
我的$etag=$headers->if_none_match;$headers=$headers->if_none_match('“abc321”');
获取或替换当前标题值If-无匹配
收割台。
我的$date=$headers->last_modified;$headers=$headers->last_modified(“2008年8月17日星期日16:27:35 GMT”);
获取或替换当前标题值上次修改时间
收割台。
我的$link=$headers->link;$headers=$headers->链接('<http://127.0.0.1/foo/3>; rel=“下一步”);
获取或替换当前标题值链接
标题来自副本请求5988.
我的$links=$headers->links;$headers=$headers->链接({next=>'http://example.com/foo',上一个=>'http://example.com/bar'});
获取或设置来自或到的web链接链接
收割台依据副本请求5988.
#提取有关下一页的信息说$headers->links->{next}{link};说$headers->links->{next}{title};
my$location=$headers->location;$headers=$headers->位置('http://127.0.0.1/foo');
获取或替换当前标题值位置
收割台。
my$origin=$headers->origin;我的$origin=$headers->origin;$headers=$headers->原点('http://example.com');
获取或替换当前标题值原产地
标题来自副本请求6454.
my$authenticate=$headers->proxy_authenticate;$headers=$headers->proxy_authenticate('Basic“realm');
获取或替换当前标题值代理认证
收割台。
我的$authorization=$headers->proxy_authorization;$headers=$headers->proxy_authorization('Basic Zm9vOmJhcg==');
获取或替换当前标题值代理授权
收割台。
my$range=$headers->range;$headers=$headers->范围('字节=2-8');
获取或替换当前标题值范围
收割台。
我的$referrer=$headers->referer;$headers=$headers->referer('网址:http://example.com');
的别名“推荐人”.
我的$referrer=$headers->referrer;$headers=$headers->referrer('http://example.com');
获取或替换当前标题值推荐人
标题,有一个输入错误RFC 2068号文件这导致了推荐人
成为官方头目。
我的$accept=$headers->sec_websocket_accept;$headers=$headers->sec_websocket_accept('s3pPLMBiTxaQ9kYGzzhZRbK+xOo=');
获取或替换当前标题值Sec-WebSocket验收
标题来自副本请求6455.
my$extensions=$headers->sec_websocket_extensions;$headers=$headers->sec_websocket_extensions('foo');
获取或替换当前标题值Sec-WebSocket-扩展
标题来自副本请求6455.
我的$key=$headers->sec_websocket_key;$headers=$headers->sec_websocket_key('dGhlIHNhbXBsZSBub25jZQ==');
获取或替换当前标题值Sec-WebSocket密钥
标题来自副本请求6455.
我的$proto=$headers->sec_websocket_protocol;$headers=$headers->sec_websocket_protocol(“示例”);
获取或替换当前标题值Sec-WebSocket-Protocol协议
标题来自副本请求6455.
我的$version=$headers->sec_websocket_version;$headers=$headers->sec_websocket_version(13);
获取或替换当前标题值Sec-WebSocket-Version第二版
标题来自副本请求6455.
我的$server=$headers->server;$headers=$headers->server('Mojo');
获取或替换当前标题值服务器
收割台。
我的$timing=$headers->server_timing;$headers=$headers->server_timing('app;desc=Mojolicious;dur=0.0001');
获取或替换当前标题值服务器定时
标题来自服务器计时.
我的$cookie=$headers->setcookie;$headers=$headers->set_cookie('f=b;路径=/');
获取或替换当前标题值套餐-Cookie
标题来自副本请求6265.
my$status=$headers->status;$headers=$headers->状态(“200 OK”);
获取或替换当前标题值状态
标题来自射频3875.
我的$policy=$headers->strict_transport_security;$headers=$headers->strict_transport_security('max-age=31536000');
获取或替换当前标题值严格的运输安全
标题来自副本请求6797.
我的$te=$headers->te;$headers=$headers->te(“块状”);
获取或替换当前标题值TE公司
收割台。
我的$traile=$headers->traile;$headers=$headers->拖车('X-Foo');
获取或替换当前标题值拖车
收割台。
my$encoding=$headers->transfer_encoding;$headers=$headers->transfer_encoding('chunked');
获取或替换当前标题值传输编码
收割台。
我的$upgrade=$headers->upgrade;$headers=$headers->upgrade('websocket');
获取或替换当前标题值升级
收割台。
my$agent=$headers->user_agent;$headers=$headers->user_agent('Mojo/1.0');
获取或替换当前标题值用户代理
收割台。
我的$vary=$headers->vary;$headers=$headers->vary('*');
获取或替换当前标题值变化
收割台。
my$authenticate=$headers->www_authenticate;$headers=$headers->www_authenticate('Basic realm=“realm”');
获取或替换当前标题值WWW-身份验证
收割台。
Mojolicious公司,Mojolicious::指南,https://mojolicious.org.