如何在Perl中获取HTTP和https返回代码

Sammidbest

我是perl的新手,我们将不胜感激!

我必须通过perl调用一些URL(在Unix机器上).URL既是HTTP又是https

如果成功调用了URL,则可以创建一个日志文件,指出无法调用URL。

为了调用URL,我正在考虑将其用于

  exec 'firefox http://www.yahoo.com';

但是如何获取http和https请求状态代码?如果状态为200,则可以,否则出现错误。

请帮助!

不要使用诸如Firefox之类的浏览器,而应使用HTTP客户端库,例如HTTP :: TinyLWP :: UserAgent

例如:

#!/usr/bin/env perl

use strict;
use warnings;
use feature 'say';

use HTTP::Tiny;

my $Client = HTTP::Tiny->new();

my @urls = (
    'http://www.yahoo.com',
    'https://www.google.com',
    'http://nosuchsiteexists.com',
);

for my $url (@urls) {
    my $response = $Client->get($url);
    say $url, ": ", $response->{status};
}

哪个输出:

alex@yuzu:~$ ./return_status.pl 
http://www.yahoo.com: 200
https://www.google.com: 200
http://nosuchsiteexists.com: 599

如果要正确识别重定向状态码(3XX),则必须将max_redirect参数设置为0。

alex@yuzu:~$ perl -MHTTP::Tiny -E 'say HTTP::Tiny->new(max_redirect => 0)->get("http://www.nestoria.co.uk/soho")->{status};'
301

如果您只关心成功,则响应hashref包含一个“成功”字段,成功时为true,失败时为false。

alex@yuzu:~$ perl -MHTTP::Tiny -E 'say HTTP::Tiny->new()->get("http://www.google.com")->{success};'
1

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在ServiceStack中返回不同的Http状态代码

来自分类Dev

如何在Mule中获取REST服务的HTTP状态代码

来自分类Dev

在LoopbackJS中:如何在启动脚本或服务器端代码中获取服务器协议(http或https)?

来自分类Dev

如何在球衣中为空值返回HTTP 404而不是HTTP 204响应代码

来自分类Dev

如何在perl中阅读此代码?

来自分类Dev

如何在Perl单行代码中获取当前文件的文件名?

来自分类Dev

如何使用 AWS Gateway 获取 Lambda 以在 C# 中返回 HTTP 错误状态代码

来自分类Dev

如何在Linux中使用curl分别获取http状态代码和内容

来自分类Dev

如何在Android Studio中获取SKU代码,买方代码和CSC

来自分类Dev

如何在Android Studio中获取SKU代码,买方代码和CSC

来自分类Dev

如何在Perl中获取xml值?

来自分类Dev

如何在perl中获取捕获的组

来自分类Dev

如何在nginx mod_perl中获取http_referer

来自分类Dev

如何在AngularJS单页应用程序中返回http状态代码?

来自分类Dev

如何在 Vibe.d 中返回带有 HTTP 代码的 JSON?

来自分类Dev

如何在Bash脚本中同时获取命令的结果及其返回代码?

来自分类Dev

如何在Android中同时使用HTTPS和HTTP解析JSON数据?

来自分类Dev

如何在Unity中为Android / IOS进行请求并获取HTTP响应代码

来自分类Dev

如何在soap客户端中获取Http响应代码?

来自分类Dev

如何在AFNetworking中获取状态代码

来自分类Dev

如何在Java中获取响应代码

来自分类Dev

如何在R中获取代码?

来自分类Dev

如何在此代码中获取文本

来自分类Dev

我如何在AWS Lambda中返回状态代码和回复

来自分类Dev

如何在 Javascript 中返回 HTTP 响应?

来自分类Dev

C#-如何从http请求中获取HTTP状态代码

来自分类Dev

PHP:从String中删除http://,http:// www,https://,https://,然后获取域名和TLD

来自分类Dev

如何在PHP中设置HTTP响应状态代码和消息

来自分类Dev

如何在 bash 中从网站中提取 http 代码、大小标题和标题?

Related 相关文章

  1. 1

    如何在ServiceStack中返回不同的Http状态代码

  2. 2

    如何在Mule中获取REST服务的HTTP状态代码

  3. 3

    在LoopbackJS中:如何在启动脚本或服务器端代码中获取服务器协议(http或https)?

  4. 4

    如何在球衣中为空值返回HTTP 404而不是HTTP 204响应代码

  5. 5

    如何在perl中阅读此代码?

  6. 6

    如何在Perl单行代码中获取当前文件的文件名?

  7. 7

    如何使用 AWS Gateway 获取 Lambda 以在 C# 中返回 HTTP 错误状态代码

  8. 8

    如何在Linux中使用curl分别获取http状态代码和内容

  9. 9

    如何在Android Studio中获取SKU代码,买方代码和CSC

  10. 10

    如何在Android Studio中获取SKU代码,买方代码和CSC

  11. 11

    如何在Perl中获取xml值?

  12. 12

    如何在perl中获取捕获的组

  13. 13

    如何在nginx mod_perl中获取http_referer

  14. 14

    如何在AngularJS单页应用程序中返回http状态代码?

  15. 15

    如何在 Vibe.d 中返回带有 HTTP 代码的 JSON?

  16. 16

    如何在Bash脚本中同时获取命令的结果及其返回代码?

  17. 17

    如何在Android中同时使用HTTPS和HTTP解析JSON数据?

  18. 18

    如何在Unity中为Android / IOS进行请求并获取HTTP响应代码

  19. 19

    如何在soap客户端中获取Http响应代码?

  20. 20

    如何在AFNetworking中获取状态代码

  21. 21

    如何在Java中获取响应代码

  22. 22

    如何在R中获取代码?

  23. 23

    如何在此代码中获取文本

  24. 24

    我如何在AWS Lambda中返回状态代码和回复

  25. 25

    如何在 Javascript 中返回 HTTP 响应?

  26. 26

    C#-如何从http请求中获取HTTP状态代码

  27. 27

    PHP:从String中删除http://,http:// www,https://,https://,然后获取域名和TLD

  28. 28

    如何在PHP中设置HTTP响应状态代码和消息

  29. 29

    如何在 bash 中从网站中提取 http 代码、大小标题和标题?

热门标签

归档