首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Plack如何调试请求?

Plack如何调试请求?
EN

Stack Overflow用户
提问于 2021-04-05 20:40:24
回答 1查看 85关注 0票数 1

我正在用Plack调试一个HTTP客户端,plack服务器监听端口80,客户端发送请求。如何使用Plack查看客户端请求?我正在尝试这样做:

代码语言:javascript
复制
my $app = sub {
  my $self = shift;

  [200, ['Content-Type' => 'text/html'], [ $self ]];
};

如何调试请求?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-06 21:44:53

PSGI/Plack是一个围绕HTTP的抽象。它的目标是不必为实现细节而烦恼(就像没有它一样)。当你的应用程序看到请求的时候,它已经被解析成$env,并且在Plack的表示中。

你可以在Plack::HTTPParser::PP中安装一些小补丁来转储$chunk,看看会有什么东西进来。您必须在您的环境中设置PLACK_HTTP_PARSER_PP=1,以确保它加载的是纯Perl版本。

然而,这似乎真的很乏味。如果你在Linux上,你可以使用netcat (nc)。在您的端口上侦听,并使用您正在测试的客户端在那里发送请求。

代码语言:javascript
复制
$ nc -l 3000
GET / HTTP/1.1
Host: localhost:3000
User-Agent: curl/7.68.0
Accept: */*

在另一个终端..。

代码语言:javascript
复制
$ curl localhost:3000

如果你不关心确切的表示,而只关心它在解析后是否有正确的东西,那么可以从在你的Plack应用程序中丢弃$env开始。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66953217

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档