【发布时间】:2016-09-14 07:01:27
【问题描述】:
这是我第一次在这个网站上发帖,但我经常来。我被困在一个我正在编写有趣的项目上。我是 Perl 的新手,所以请放轻松。我已经成功地用 Perl 编写了一个 Web 服务器,它解析 PHP 并处理多个连接。
到目前为止,一切都很好,但我一直在向浏览器发送 cookie。
我想我不明白我的服务器在发送 cookie 之前应该如何解析文档输出(从读取文件到通过 HTTP 发送)。我已经搜索了好几天,结果都是空的。可能我过于复杂了,但我应该如何知道文档要求发送的键值是什么?
使用HTTP::Cookies 仅搜索从网络解析文档的着陆页,这不是我想要的。在服务器端解析本地文档以获取“Set-Cookie:”之前会发生什么情况,然后再发送标头?
我试过HTTP::Cookies->extract_cookies($my_local_file),但它的回应是
“无法通过包定位对象方法“_header”...”
这是有道理的,因为头文件从未发送过,因为它发生在服务器端。
【问题讨论】:
-
Re "在服务器端解析本地文档以获取 "Set-Cookie:" 在发送标头之前会发生什么?" 这是什么意思?
Set-Cookie是 HTTP 服务器在响应中包含的标头,而不是在文档中找到的内容。 -
相关规范为RFC 6265。 Cookie::Baker 似乎生成(值)Set-Cookie 标头。
-
如果您使用 Apache mod_perl2,我建议您检查Net::API::REST::Cookies,它处理从 Web 浏览器接收并由服务器发送到 Web 浏览器的 cookie。
标签: perl cookies webserver httpserver io-socket