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

📄 apache2::requestio.3

📁 视频监控网络部分的协议ddns,的模块的实现代码,请大家大胆指正.
💻 3
📖 第 1 页 / 共 2 页
字号:
.\" Automatically generated by Pod::Man 2.16 (Pod::Simple 3.05).\".\" Standard preamble:.\" ========================================================================.de Sh \" Subsection heading.br.if t .Sp.ne 5.PP\fB\\$1\fR.PP...de Sp \" Vertical space (when we can't use .PP).if t .sp .5v.if n .sp...de Vb \" Begin verbatim text.ft CW.nf.ne \\$1...de Ve \" End verbatim text.ft R.fi...\" Set up some character translations and predefined strings.  \*(-- will.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left.\" double quote, and \*(R" will give a right double quote.  \*(C+ will.\" give a nicer C++.  Capital omega is used to do unbreakable dashes and.\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,.\" nothing in troff, for use with C<>..tr \(*W-.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'.ie n \{\.    ds -- \(*W-.    ds PI pi.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch.    ds L" "".    ds R" "".    ds C` "".    ds C' ""'br\}.el\{\.    ds -- \|\(em\|.    ds PI \(*p.    ds L" ``.    ds R" '''br\}.\".\" Escape single quotes in literal strings from groff's Unicode transform..ie \n(.g .ds Aq \(aq.el       .ds Aq '.\".\" If the F register is turned on, we'll generate index entries on stderr for.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index.\" entries marked with X<> in POD.  Of course, you'll have to process the.\" output yourself in some meaningful fashion..ie \nF \{\.    de IX.    tm Index:\\$1\t\\n%\t"\\$2"...    nr % 0.    rr F.\}.el \{\.    de IX...\}.\".\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2)..\" Fear.  Run.  Save yourself.  No user-serviceable parts..    \" fudge factors for nroff and troff.if n \{\.    ds #H 0.    ds #V .8m.    ds #F .3m.    ds #[ \f1.    ds #] \fP.\}.if t \{\.    ds #H ((1u-(\\\\n(.fu%2u))*.13m).    ds #V .6m.    ds #F 0.    ds #[ \&.    ds #] \&.\}.    \" simple accents for nroff and troff.if n \{\.    ds ' \&.    ds ` \&.    ds ^ \&.    ds , \&.    ds ~ ~.    ds /.\}.if t \{\.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u".    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'.\}.    \" troff and (daisy-wheel) nroff accents.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'.ds 8 \h'\*(#H'\(*b\h'-\*(#H'.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#].ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#].ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#].ds ae a\h'-(\w'a'u*4/10)'e.ds Ae A\h'-(\w'A'u*4/10)'E.    \" corrections for vroff.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'.    \" for low resolution devices (crt and lpr).if \n(.H>23 .if \n(.V>19 \\{\.    ds : e.    ds 8 ss.    ds o a.    ds d- d\h'-1'\(ga.    ds D- D\h'-1'\(hy.    ds th \o'bp'.    ds Th \o'LP'.    ds ae ae.    ds Ae AE.\}.rm #[ #] #H #V #F C.\" ========================================================================.\".IX Title "mod_perl-2.0.2::docs::api::Apache2::RequestIO 3".TH mod_perl-2.0.2::docs::api::Apache2::RequestIO 3 "2005-10-21" "perl v5.10.0" "User Contributed Perl Documentation".\" For nroff, turn off justification.  Always turn off hyphenation; it makes.\" way too many mistakes in technical documents..if n .ad l.nh.SH "NAME"Apache2::RequestIO \- Perl API for Apache request record IO.SH "Synopsis".IX Header "Synopsis".Vb 1\&  use Apache2::RequestIO ();\&  \&  $rc = $r\->discard_request_body();\&  \&  $r\->print("foo", "bar");\&  $r\->puts("foo", "bar"); # same as print, but no flushing\&  $r\->printf("%s $d", "foo", 5);\&  \&  $r\->read($buffer, $len);\&  \&  $r\->rflush();\&  \&  $r\->sendfile($filename);\&  \&  $r\->write("foobartarcar", 3, 5);.Ve.SH "Description".IX Header "Description"\&\f(CW\*(C`Apache2::RequestIO\*(C'\fR provides the \s-1API\s0 to perform \s-1IO\s0 on the Apacherequest object..SH "API".IX Header "API"\&\f(CW\*(C`Apache2::RequestIO\*(C'\fR provides the following functions and/or methods:.ie n .Sh """discard_request_body""".el .Sh "\f(CWdiscard_request_body\fP".IX Subsection "discard_request_body"In \s-1HTTP/1\s0.1, any method can have a body.  However, most \s-1GET\s0 handlerswouldn't know what to do with a request body if they received one.This helper routine tests for and reads any message body in therequest, simply discarding whatever it receives.  We need to do thisbecause failing to read the request body would cause it to beinterpreted as the next request on a persistent connection..PP.Vb 1\&  $rc = $r\->discard_request_body();.Ve.ie n .IP "obj: $r\fR ( \f(CW""Apache2::RequestRec object"" )" 4.el .IP "obj: \f(CW$r\fR ( \f(CWApache2::RequestRec object\fR )" 4.IX Item "obj: $r ( Apache2::RequestRec object )"The current request.ie n .IP "ret: $rc ( integer )" 4.el .IP "ret: \f(CW$rc\fR ( integer )" 4.IX Item "ret: $rc ( integer )"\&\f(CW\*(C`APR::Const status constant\*(C'\fR if requestis malformed, \f(CW\*(C`Apache2::Const::OK\*(C'\fR otherwise..IP "since: 2.0.00" 4.IX Item "since: 2.0.00".PPSince we return an error status if the request is malformed, thisroutine should be called at the beginning of a no-body handler, e.g.,.PP.Vb 3\&   use Apache2::Const \-compile => qw(OK);\&   $rc = $r\->discard_request_body;\&   return $rc if $rc != Apache2::Const::OK;.Ve.ie n .Sh """print""".el .Sh "\f(CWprint\fP".IX Subsection "print"Send data to the client..PP.Vb 1\&  $cnt = $r\->print(@msg);.Ve.ie n .IP "obj: $r\fR ( \f(CW""Apache2::RequestRec object"" )" 4.el .IP "obj: \f(CW$r\fR ( \f(CWApache2::RequestRec object\fR )" 4.IX Item "obj: $r ( Apache2::RequestRec object )".PD 0.ie n .IP "arg1: @msg ( \s-1ARRAY\s0 )" 4.el .IP "arg1: \f(CW@msg\fR ( \s-1ARRAY\s0 )" 4.IX Item "arg1: @msg ( ARRAY )".PDData to send.ie n .IP "ret: $cnt ( number )" 4.el .IP "ret: \f(CW$cnt\fR ( number )" 4.IX Item "ret: $cnt ( number )"How many bytes were sent (or buffered).  If zero bytes weresent, \f(CW\*(C`print\*(C'\fR will return \f(CW0E0\fR, or \*(L"zero but true,\*(R" whichwill still evaluate to \f(CW0\fR in a numerical context..ie n .IP "excpt: ""APR::Error""" 4.el .IP "excpt: \f(CWAPR::Error\fR" 4.IX Item "excpt: APR::Error".PD 0.IP "since: 2.0.00" 4.IX Item "since: 2.0.00".PD.PPThe data is flushed only if \s-1STDOUT\s0 stream's \f(CW$|\fR is true. Otherwiseit's buffered up to the size of the buffer, flushing only excessivedata..ie n .Sh """printf""".el .Sh "\f(CWprintf\fP".IX Subsection "printf"Format and send data to the client (same as \f(CW\*(C`printf\*(C'\fR)..PP.Vb 1\&  $cnt = $r\->printf($format, @args);.Ve.ie n .IP "obj: $r\fR ( \f(CW""Apache2::RequestRec object"" )" 4.el .IP "obj: \f(CW$r\fR ( \f(CWApache2::RequestRec object\fR )" 4.IX Item "obj: $r ( Apache2::RequestRec object )".PD 0.ie n .IP "arg1: $format ( string )" 4.el .IP "arg1: \f(CW$format\fR ( string )" 4.IX Item "arg1: $format ( string )".PDFormat string, as in the Perl core \f(CW\*(C`printf\*(C'\fR function..ie n .IP "arg2: @args ( \s-1ARRAY\s0 )" 4.el .IP "arg2: \f(CW@args\fR ( \s-1ARRAY\s0 )" 4.IX Item "arg2: @args ( ARRAY )"Arguments to be formatted, as in the Perl core \f(CW\*(C`printf\*(C'\fR function..ie n .IP "ret: $cnt ( number )" 4.el .IP "ret: \f(CW$cnt\fR ( number )" 4.IX Item "ret: $cnt ( number )"How many bytes were sent (or buffered).ie n .IP "excpt: ""APR::Error""" 4.el .IP "excpt: \f(CWAPR::Error\fR" 4.IX Item "excpt: APR::Error".PD 0.IP "since: 2.0.00" 4.IX Item "since: 2.0.00".PD.PPThe data is flushed only if \s-1STDOUT\s0 stream's \f(CW$|\fR is true. Otherwiseit's buffered up to the size of the buffer, flushing only excessivedata..ie n .Sh """puts""".el .Sh "\f(CWputs\fP".IX Subsection "puts"Send data to the client.PP.Vb 1\&  $cnt = $r\->puts(@msg);.Ve.ie n .IP "obj: $r\fR ( \f(CW""Apache2::RequestRec object"" )" 4.el .IP "obj: \f(CW$r\fR ( \f(CWApache2::RequestRec object\fR )" 4.IX Item "obj: $r ( Apache2::RequestRec object )".PD 0.ie n .IP "arg1: @msg ( \s-1ARRAY\s0 )" 4.el .IP "arg1: \f(CW@msg\fR ( \s-1ARRAY\s0 )" 4.IX Item "arg1: @msg ( ARRAY )".PDData to send.ie n .IP "ret: $cnt ( number )" 4.el .IP "ret: \f(CW$cnt\fR ( number )" 4.IX Item "ret: $cnt ( number )"How many bytes were sent (or buffered).ie n .IP "excpt: ""APR::Error""" 4.el .IP "excpt: \f(CWAPR::Error\fR" 4.IX Item "excpt: APR::Error".PD 0.IP "since: 2.0.00" 4.IX Item "since: 2.0.00".PD.PP\&\f(CW\*(C`puts()\*(C'\fR is similar to \f(CW\*(C`print()\*(C'\fR, but it won't attemptto flush data, no matter what the value of \s-1STDOUT\s0 stream's \f(CW$|\fRis. Therefore assuming that \s-1STDOUT\s0 stream's \f(CW$|\fR is true, this methodshould be a tiny bit faster than \f(CW\*(C`print()\*(C'\fR, especiallyif small strings are printed..ie n .Sh """read""".el .Sh "\f(CWread\fP".IX Subsection "read"Read data from the client..PP.Vb 2\&  $cnt = $r\->read($buffer, $len);\&  $cnt = $r\->read($buffer, $len, $offset);.Ve.ie n .IP "obj: $r\fR ( \f(CW""Apache2::RequestRec object"" )" 4.el .IP "obj: \f(CW$r\fR ( \f(CWApache2::RequestRec object\fR )" 4.IX Item "obj: $r ( Apache2::RequestRec object )".PD 0.ie n .IP "arg1: $buffer ( \s-1SCALAR\s0 )" 4

⌨️ 快捷键说明

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