【发布时间】:2015-04-29 09:36:50
【问题描述】:
我正在尝试编写一个简单的 perl 脚本来调用和 API,如果状态代码是 2xx,则对响应执行一些操作。而如果是 4xx 或 5xx 则执行其他操作。
我遇到的问题是我能够获取响应代码(使用自定义写出格式化程序并将输出传递到其他地方),或者我可以获得整个响应和标头。
my $curlResponseCode = `curl -s -o /dev/null -w "%{http_code}" ....`;
只会给我状态码。
my $curlResponse = `curl -si ...`;
会给我整个标题加上响应。
我的问题是如何以一种简洁的格式从服务器获取响应正文和 http 状态代码,以便将它们分成两个单独的变量。
很遗憾,我不能使用 LWP 或任何其他单独的库。
提前致谢。 -斯宾塞
【问题讨论】:
-
“我不能使用 LWP 或任何其他单独的库” 有什么特别的原因吗?
-
是的,有很多不值得在这里讨论的原因......本质上它是一个环境约束。 LWP 会让我的生活更轻松。
-
我之所以这么问,是因为许多说“我不能使用模块”的人认为您需要管理员权限才能使用它们,但事实并非如此。如果您没有在问题中提供令人信服的理由,通常有人会问为什么,因为您不使用 CPAN 确实限制了自己。