⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 status.pm

📁 视频监控网络部分的协议ddns,的模块的实现代码,请大家大胆指正.
💻 PM
字号:
package HTTP::Status;# $Id: Status.pm,v 1.28 2003/10/23 18:56:01 uid39246 Exp $use strict;require 5.002;   # becase we use prototypesuse vars qw(@ISA @EXPORT @EXPORT_OK $VERSION);require Exporter;@ISA = qw(Exporter);@EXPORT = qw(is_info is_success is_redirect is_error status_message);@EXPORT_OK = qw(is_client_error is_server_error);$VERSION = sprintf("%d.%02d", q$Revision: 1.28 $ =~ /(\d+)\.(\d+)/);# Note also addition of mnemonics to @EXPORT belowmy %StatusCode = (    100 => 'Continue',    101 => 'Switching Protocols',    102 => 'Processing',                      # WebDAV    200 => 'OK',    201 => 'Created',    202 => 'Accepted',    203 => 'Non-Authoritative Information',    204 => 'No Content',    205 => 'Reset Content',    206 => 'Partial Content',    207 => 'Multi-Status',                    # WebDAV    300 => 'Multiple Choices',    301 => 'Moved Permanently',    302 => 'Found',    303 => 'See Other',    304 => 'Not Modified',    305 => 'Use Proxy',    307 => 'Temporary Redirect',    400 => 'Bad Request',    401 => 'Unauthorized',    402 => 'Payment Required',    403 => 'Forbidden',    404 => 'Not Found',    405 => 'Method Not Allowed',    406 => 'Not Acceptable',    407 => 'Proxy Authentication Required',    408 => 'Request Timeout',    409 => 'Conflict',    410 => 'Gone',    411 => 'Length Required',    412 => 'Precondition Failed',    413 => 'Request Entity Too Large',    414 => 'Request-URI Too Large',    415 => 'Unsupported Media Type',    416 => 'Request Range Not Satisfiable',    417 => 'Expectation Failed',    422 => 'Unprocessable Entity',            # WebDAV    423 => 'Locked',                          # WebDAV    424 => 'Failed Dependency',               # WebDAV    500 => 'Internal Server Error',    501 => 'Not Implemented',    502 => 'Bad Gateway',    503 => 'Service Unavailable',    504 => 'Gateway Timeout',    505 => 'HTTP Version Not Supported',    507 => 'Insufficient Storage',            # WebDAV);my $mnemonicCode = '';my ($code, $message);while (($code, $message) = each %StatusCode) {    # create mnemonic subroutines    $message =~ tr/a-z \-/A-Z__/;    $mnemonicCode .= "sub RC_$message () { $code }\t";    # make them exportable    $mnemonicCode .= "push(\@EXPORT, 'RC_$message');\n";}# warn $mnemonicCode; # for developmenteval $mnemonicCode; # only one eval for speeddie if $@;# backwards compatibility*RC_MOVED_TEMPORARILY = \&RC_FOUND;  # 302 was renamed in the standardpush(@EXPORT, "RC_MOVED_TEMPORARILY");sub status_message  ($) { $StatusCode{$_[0]}; }sub is_info         ($) { $_[0] >= 100 && $_[0] < 200; }sub is_success      ($) { $_[0] >= 200 && $_[0] < 300; }sub is_redirect     ($) { $_[0] >= 300 && $_[0] < 400; }sub is_error        ($) { $_[0] >= 400 && $_[0] < 600; }sub is_client_error ($) { $_[0] >= 400 && $_[0] < 500; }sub is_server_error ($) { $_[0] >= 500 && $_[0] < 600; }1;__END__=head1 NAMEHTTP::Status - HTTP Status code processing=head1 SYNOPSIS use HTTP::Status; if ($rc != RC_OK) {     print status_message($rc), "\n"; } if (is_success($rc)) { ... } if (is_error($rc)) { ... } if (is_redirect($rc)) { ... }=head1 DESCRIPTIONI<HTTP::Status> is a library of routines for defining andclassifying HTTP status codes for libwww-perl.  Status codes areused to encode the overall outcome of a HTTP response message.  Codescorrespond to those defined in RFC 2616 and RFC 2518.=head1 CONSTANTSThe following constant functions can be used as mnemonic status codenames:   RC_CONTINUE				(100)   RC_SWITCHING_PROTOCOLS		(101)   RC_PROCESSING                        (102)   RC_OK				(200)   RC_CREATED				(201)   RC_ACCEPTED				(202)   RC_NON_AUTHORITATIVE_INFORMATION	(203)   RC_NO_CONTENT			(204)   RC_RESET_CONTENT			(205)   RC_PARTIAL_CONTENT			(206)   RC_MULTI_STATUS                      (207)   RC_MULTIPLE_CHOICES			(300)   RC_MOVED_PERMANENTLY			(301)   RC_FOUND				(302)   RC_SEE_OTHER				(303)   RC_NOT_MODIFIED			(304)   RC_USE_PROXY				(305)   RC_TEMPORARY_REDIRECT		(307)   RC_BAD_REQUEST			(400)   RC_UNAUTHORIZED			(401)   RC_PAYMENT_REQUIRED			(402)   RC_FORBIDDEN				(403)   RC_NOT_FOUND				(404)   RC_METHOD_NOT_ALLOWED		(405)   RC_NOT_ACCEPTABLE			(406)   RC_PROXY_AUTHENTICATION_REQUIRED	(407)   RC_REQUEST_TIMEOUT			(408)   RC_CONFLICT				(409)   RC_GONE				(410)   RC_LENGTH_REQUIRED			(411)   RC_PRECONDITION_FAILED		(412)   RC_REQUEST_ENTITY_TOO_LARGE		(413)   RC_REQUEST_URI_TOO_LARGE		(414)   RC_UNSUPPORTED_MEDIA_TYPE		(415)   RC_REQUEST_RANGE_NOT_SATISFIABLE     (416)   RC_EXPECTATION_FAILED		(417)   RC_UNPROCESSABLE_ENTITY              (422)   RC_LOCKED                            (423)   RC_FAILED_DEPENDENCY                 (424)   RC_INTERNAL_SERVER_ERROR		(500)   RC_NOT_IMPLEMENTED			(501)   RC_BAD_GATEWAY			(502)   RC_SERVICE_UNAVAILABLE		(503)   RC_GATEWAY_TIMEOUT			(504)   RC_HTTP_VERSION_NOT_SUPPORTED	(505)   RC_INSUFFICIENT_STORAGE              (507)=head1 FUNCTIONSThe following additional functions are provided.  Most of them areexported by default.=over 4=item status_message( $code )The status_message() function will translate status codes to humanreadable strings. The string is the same as found in the constantnames above.  If the $code is unknown, then C<undef> is returned.=item is_info( $code )Return TRUE if C<$code> is an I<Informational> status code.  Thisclass of status code indicates a provisional response which can't haveany content.=item is_success( $code )Return TRUE if C<$code> is a I<Successful> status code.=item is_redirect( $code )Return TRUE if C<$code> is a I<Redirection> status code. This class ofstatus code indicates that further action needs to be taken by theuser agent in order to fulfill the request.=item is_error( $code )Return TRUE if C<$code> is an I<Error> status code.  The functionreturn TRUE for both client error or a server error status codes.=item is_client_error( $code )Return TRUE if C<$code> is an I<Client Error> status code. This classof status code is intended for cases in which the client seems to haveerred.This function is B<not> exported by default.=item is_server_error( $code )Return TRUE if C<$code> is an I<Server Error> status code. This classof status codes is intended for cases in which the server is awarethat it has erred or is incapable of performing the request.This function is B<not> exported by default.=back=head1 BUGSWished @EXPORT_OK had been used instead of @EXPORT in the beginning.Now too much is exported by default.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -