view release on metacpan or search on metacpan
doc/psgi_cheatsheet.BM.txt view on Meta::CPAN
perl lib/HTTP/Handy.pm [port]
[ 2. Baara dilan ka kunnafoniw ($env) ]
REQUEST_METHOD sÉbÉnni "GET" / "POST"
PATH_INFO sÉbÉnni /index.html
QUERY_STRING sÉbÉnni key=val
SERVER_NAME sÉbÉnni hostname
SERVER_PORT hakÉ 8080
CONTENT_TYPE sÉbÉnni content-type
CONTENT_LENGTH hakÉ (bytes)
HTTP_* sÉbÉnni HTTP_USER_AGENT ...
psgi.input baarakÉlaw (POST body)
psgi.errors glob \*STDERR
psgi.url_scheme sÉbÉnni "http"
[ 3. Jaabi fÉrmati ]
[$status, \@headers, \@body]
doc/psgi_cheatsheet.BN.txt view on Meta::CPAN
perl lib/HTTP/Handy.pm [port]
[ 2. à¦
নà§à¦°à§à¦§ পরিবà§à¦¶ à¦à¦²à¦ ($env) ]
REQUEST_METHOD সà§à¦à§à¦°à¦¿à¦ "GET" / "POST"
PATH_INFO সà§à¦à§à¦°à¦¿à¦ /index.html
QUERY_STRING সà§à¦à§à¦°à¦¿à¦ key=val
SERVER_NAME সà§à¦à§à¦°à¦¿à¦ hostname
SERVER_PORT পà§à¦°à§à¦£à¦¸à¦à¦à§à¦¯à¦¾ 8080
CONTENT_TYPE সà§à¦à§à¦°à¦¿à¦ content-type
CONTENT_LENGTH পà§à¦°à§à¦£à¦¸à¦à¦à§à¦¯à¦¾ (bytes)
HTTP_* সà§à¦à§à¦°à¦¿à¦ HTTP_USER_AGENT ...
psgi.input à¦
বà¦à§à¦à§à¦ (POST body)
psgi.errors glob \*STDERR
psgi.url_scheme সà§à¦à§à¦°à¦¿à¦ "http"
[ 3. পà§à¦°à¦¤à¦¿à¦à§à¦°à¦¿à¦¯à¦¼à¦¾ ফরমà§à¦¯à¦¾à¦ ]
[$status, \@headers, \@body]
doc/psgi_cheatsheet.FR.txt view on Meta::CPAN
perl lib/HTTP/Handy.pm [port]
[ 2. Variables d'environnement de requête ($env) ]
REQUEST_METHOD chaîne "GET" / "POST"
PATH_INFO chaîne /index.html
QUERY_STRING chaîne key=val
SERVER_NAME chaîne hostname
SERVER_PORT entier 8080
CONTENT_TYPE chaîne content-type
CONTENT_LENGTH entier (bytes)
HTTP_* chaîne HTTP_USER_AGENT ...
psgi.input objet (POST body)
psgi.errors glob \*STDERR
psgi.url_scheme chaîne "http"
[ 3. Format de réponse ]
[$status, \@headers, \@body]
doc/psgi_cheatsheet.HI.txt view on Meta::CPAN
perl lib/HTTP/Handy.pm [port]
[ 2. à¤
नà¥à¤°à¥à¤§ परà¥à¤¯à¤¾à¤µà¤°à¤£ à¤à¤° ($env) ]
REQUEST_METHOD सà¥à¤à¥à¤°à¤¿à¤à¤ "GET" / "POST"
PATH_INFO सà¥à¤à¥à¤°à¤¿à¤à¤ /index.html
QUERY_STRING सà¥à¤à¥à¤°à¤¿à¤à¤ key=val
SERVER_NAME सà¥à¤à¥à¤°à¤¿à¤à¤ hostname
SERVER_PORT पà¥à¤°à¥à¤£à¤¾à¤à¤ 8080
CONTENT_TYPE सà¥à¤à¥à¤°à¤¿à¤à¤ content-type
CONTENT_LENGTH पà¥à¤°à¥à¤£à¤¾à¤à¤ (bytes)
HTTP_* सà¥à¤à¥à¤°à¤¿à¤à¤ HTTP_USER_AGENT ...
psgi.input à¤à¤¬à¥à¤à¥à¤à¥à¤ (POST body)
psgi.errors glob \*STDERR
psgi.url_scheme सà¥à¤à¥à¤°à¤¿à¤à¤ "http"
[ 3. पà¥à¤°à¤¤à¤¿à¤à¥à¤°à¤¿à¤¯à¤¾ पà¥à¤°à¤¾à¤°à¥à¤ª ]
[$status, \@headers, \@body]
doc/psgi_cheatsheet.ID.txt view on Meta::CPAN
perl lib/HTTP/Handy.pm [port]
[ 2. Variabel lingkungan permintaan ($env) ]
REQUEST_METHOD string "GET" / "POST"
PATH_INFO string /index.html
QUERY_STRING string key=val
SERVER_NAME string hostname
SERVER_PORT integer 8080
CONTENT_TYPE string content-type
CONTENT_LENGTH integer (bytes)
HTTP_* string HTTP_USER_AGENT ...
psgi.input objek (POST body)
psgi.errors glob \*STDERR
psgi.url_scheme string "http"
[ 3. Format respons ]
[$status, \@headers, \@body]
doc/psgi_cheatsheet.KM.txt view on Meta::CPAN
perl lib/HTTP/Handy.pm [port]
[ 2. á¢áááâááá·áááá¶áâáááá¾ ($env) ]
REQUEST_METHOD ááááá¢áááá "GET" / "POST"
PATH_INFO ááááá¢áááá /index.html
QUERY_STRING ááááá¢áááá key=val
SERVER_NAME ááááá¢áááá hostname
SERVER_PORT á
ááá½áâááá 8080
CONTENT_TYPE ááááá¢áááá content-type
CONTENT_LENGTH á
ááá½áâááá (bytes)
HTTP_* ááááá¢áááá HTTP_USER_AGENT ...
psgi.input ááááá» (POST body)
psgi.errors glob \*STDERR
psgi.url_scheme ááááá¢áááá "http"
[ 3. ááááááááá¶áâáá¶áâáááá¾áâáá ]
[$status, \@headers, \@body]
doc/psgi_cheatsheet.KO.txt view on Meta::CPAN
perl lib/HTTP/Handy.pm [port]
[ 2. ìì² íê²½ ë³ì ($env) ]
REQUEST_METHOD 문ìì´ "GET" / "POST"
PATH_INFO 문ìì´ /index.html
QUERY_STRING 문ìì´ key=val
SERVER_NAME 문ìì´ hostname
SERVER_PORT ì ì 8080
CONTENT_TYPE 문ìì´ content-type
CONTENT_LENGTH ì ì (bytes)
HTTP_* 문ìì´ HTTP_USER_AGENT ...
psgi.input ê°ì²´ (POST body)
psgi.errors glob \*STDERR
psgi.url_scheme 문ìì´ "http"
[ 3. ìëµ íì ]
[$status, \@headers, \@body]
doc/psgi_cheatsheet.MN.txt view on Meta::CPAN
perl lib/HTTP/Handy.pm [port]
[ 2. Ð¥Ò¯ÑÑлÑийн оÑÑÐ½Ñ Ñ
ÑвÑÑагÑид ($env) ]
REQUEST_METHOD Ð¼Ó©Ñ "GET" / "POST"
PATH_INFO Ð¼Ó©Ñ /index.html
QUERY_STRING Ð¼Ó©Ñ key=val
SERVER_NAME Ð¼Ó©Ñ hostname
SERVER_PORT бүÑ
Ñл Ñоо 8080
CONTENT_TYPE Ð¼Ó©Ñ content-type
CONTENT_LENGTH бүÑ
Ñл Ñоо (bytes)
HTTP_* Ð¼Ó©Ñ HTTP_USER_AGENT ...
psgi.input обÑÐµÐºÑ (POST body)
psgi.errors glob \*STDERR
psgi.url_scheme Ð¼Ó©Ñ "http"
[ 3. ХаÑиÑлÑÑн ÑоÑÐ¼Ð°Ñ ]
[$status, \@headers, \@body]
doc/psgi_cheatsheet.MY.txt view on Meta::CPAN
perl lib/HTTP/Handy.pm [port]
[ 2. áá±á¬ááºá¸ááá¯áá¾á¯ áááºáááºá¸áá»áẠááááºá¸áá¾ááºáá»á¬á¸ ($env) ]
REQUEST_METHOD string "GET" / "POST"
PATH_INFO string /index.html
QUERY_STRING string key=val
SERVER_NAME string hostname
SERVER_PORT ááááºá¸áá¼áá·áº 8080
CONTENT_TYPE string content-type
CONTENT_LENGTH ááááºá¸áá¼áá·áº (bytes)
HTTP_* string HTTP_USER_AGENT ...
psgi.input object (POST body)
psgi.errors glob \*STDERR
psgi.url_scheme string "http"
[ 3. áá¯á¶á·áá¼ááºáá¾á¯ áá±á¬áºááẠ]
[$status, \@headers, \@body]
doc/psgi_cheatsheet.NE.txt view on Meta::CPAN
perl lib/HTTP/Handy.pm [port]
[ 2. à¤
नà¥à¤°à¥à¤§ वातावरण à¤à¤° ($env) ]
REQUEST_METHOD सà¥à¤à¥à¤°à¤¿à¤ "GET" / "POST"
PATH_INFO सà¥à¤à¥à¤°à¤¿à¤ /index.html
QUERY_STRING सà¥à¤à¥à¤°à¤¿à¤ key=val
SERVER_NAME सà¥à¤à¥à¤°à¤¿à¤ hostname
SERVER_PORT पà¥à¤°à¥à¤£à¤¾à¤à¤ 8080
CONTENT_TYPE सà¥à¤à¥à¤°à¤¿à¤ content-type
CONTENT_LENGTH पà¥à¤°à¥à¤£à¤¾à¤à¤ (bytes)
HTTP_* सà¥à¤à¥à¤°à¤¿à¤ HTTP_USER_AGENT ...
psgi.input वसà¥à¤¤à¥ (POST body)
psgi.errors glob \*STDERR
psgi.url_scheme सà¥à¤à¥à¤°à¤¿à¤ "http"
[ 3. पà¥à¤°à¤¤à¤¿à¤à¥à¤°à¤¿à¤¯à¤¾ ढाà¤à¤à¤¾ ]
[$status, \@headers, \@body]
doc/psgi_cheatsheet.SI.txt view on Meta::CPAN
perl lib/HTTP/Handy.pm [port]
[ 2. à¶à¶½à·à¶½à·à¶¸à· à¶´à¶»à·à·à¶» à·à·à¶ à¶½à·âය ($env) ]
REQUEST_METHOD à¶à¶±à·à¶à· "GET" / "POST"
PATH_INFO à¶à¶±à·à¶à· /index.html
QUERY_STRING à¶à¶±à·à¶à· key=val
SERVER_NAME à¶à¶±à·à¶à· hostname
SERVER_PORT à¶´à·à¶»à·à¶« à·à¶à¶à·âය෠8080
CONTENT_TYPE à¶à¶±à·à¶à· content-type
CONTENT_LENGTH à¶´à·à¶»à·à¶« à·à¶à¶à·âය෠(bytes)
HTTP_* à¶à¶±à·à¶à· HTTP_USER_AGENT ...
psgi.input à·à·à·à¶à·à· (POST body)
psgi.errors glob \*STDERR
psgi.url_scheme à¶à¶±à·à¶à· "http"
[ 3. à¶´à·âà¶»à¶à·à¶ à·à¶» à¶à¶à·à¶à·à¶º ]
[$status, \@headers, \@body]
doc/psgi_cheatsheet.TH.txt view on Meta::CPAN
perl lib/HTTP/Handy.pm [port]
[ 2. à¸à¸±à¸§à¹à¸à¸£à¸ªà¸ าà¸à¹à¸§à¸à¸¥à¹à¸à¸¡à¸à¸³à¸à¸ ($env) ]
REQUEST_METHOD สà¸à¸£à¸´à¸ "GET" / "POST"
PATH_INFO สà¸à¸£à¸´à¸ /index.html
QUERY_STRING สà¸à¸£à¸´à¸ key=val
SERVER_NAME สà¸à¸£à¸´à¸ hostname
SERVER_PORT à¸à¸³à¸à¸§à¸à¹à¸à¹à¸¡ 8080
CONTENT_TYPE สà¸à¸£à¸´à¸ content-type
CONTENT_LENGTH à¸à¸³à¸à¸§à¸à¹à¸à¹à¸¡ (bytes)
HTTP_* สà¸à¸£à¸´à¸ HTTP_USER_AGENT ...
psgi.input à¸à¸à¸à¹à¸à¹à¸à¸à¹ (POST body)
psgi.errors glob \*STDERR
psgi.url_scheme สà¸à¸£à¸´à¸ "http"
[ 3. รูà¸à¹à¸à¸à¸à¸²à¸£à¸à¸à¸à¸ªà¸à¸à¸ ]
[$status, \@headers, \@body]
doc/psgi_cheatsheet.TL.txt view on Meta::CPAN
perl lib/HTTP/Handy.pm [port]
[ 2. Mga variable ng kapaligiran ng kahilingan ($env) ]
REQUEST_METHOD string "GET" / "POST"
PATH_INFO string /index.html
QUERY_STRING string key=val
SERVER_NAME string hostname
SERVER_PORT integer 8080
CONTENT_TYPE string content-type
CONTENT_LENGTH integer (bytes)
HTTP_* string HTTP_USER_AGENT ...
psgi.input object (POST body)
psgi.errors glob \*STDERR
psgi.url_scheme string "http"
[ 3. Format ng tugon ]
[$status, \@headers, \@body]
doc/psgi_cheatsheet.TR.txt view on Meta::CPAN
perl lib/HTTP/Handy.pm [port]
[ 2. İstek ortam deÄiÅkenleri ($env) ]
REQUEST_METHOD dize "GET" / "POST"
PATH_INFO dize /index.html
QUERY_STRING dize key=val
SERVER_NAME dize hostname
SERVER_PORT tam sayı 8080
CONTENT_TYPE dize content-type
CONTENT_LENGTH tam sayı (bytes)
HTTP_* dize HTTP_USER_AGENT ...
psgi.input nesne (POST body)
psgi.errors glob \*STDERR
psgi.url_scheme dize "http"
[ 3. Yanıt biçimi ]
[$status, \@headers, \@body]
doc/psgi_cheatsheet.TW.txt view on Meta::CPAN
perl lib/HTTP/Handy.pm [port]
[ 2. è«æ±ç°å¢è®æ¸ ($env) ]
REQUEST_METHOD å串 "GET" / "POST"
PATH_INFO å串 /index.html
QUERY_STRING å串 key=val
SERVER_NAME å串 hostname
SERVER_PORT æ´æ¸ 8080
CONTENT_TYPE å串 content-type
CONTENT_LENGTH æ´æ¸ (bytes)
HTTP_* å串 HTTP_USER_AGENT ...
psgi.input ç©ä»¶ (POST body)
psgi.errors glob \*STDERR
psgi.url_scheme å串 "http"
[ 3. åææ ¼å¼ ]
[$status, \@headers, \@body]
doc/psgi_cheatsheet.UR.txt view on Meta::CPAN
perl lib/HTTP/Handy.pm [port]
[ 2. Ø¯Ø±Ø®ÙØ§Ø³Øª Ù
اØÙÙ Ù
ØªØºÛØ± ($env) ]
REQUEST_METHOD سٹرÙÚ¯ "GET" / "POST"
PATH_INFO سٹرÙÚ¯ /index.html
QUERY_STRING سٹرÙÚ¯ key=val
SERVER_NAME سٹرÙÚ¯ hostname
SERVER_PORT عدد صØÛØ 8080
CONTENT_TYPE سٹرÙÚ¯ content-type
CONTENT_LENGTH عدد صØÛØ (bytes)
HTTP_* سٹرÙÚ¯ HTTP_USER_AGENT ...
psgi.input آبجÛÚ©Ù¹ (POST body)
psgi.errors glob \*STDERR
psgi.url_scheme سٹرÙÚ¯ "http"
[ 3. Ø¬ÙØ§Ø¨Û ÙØ§Ø±Ù
ÛÙ¹ ]
[$status, \@headers, \@body]
doc/psgi_cheatsheet.UZ.txt view on Meta::CPAN
perl lib/HTTP/Handy.pm [port]
[ 2. So'rov muhit o'zgaruvchilari ($env) ]
REQUEST_METHOD satr "GET" / "POST"
PATH_INFO satr /index.html
QUERY_STRING satr key=val
SERVER_NAME satr hostname
SERVER_PORT butun son 8080
CONTENT_TYPE satr content-type
CONTENT_LENGTH butun son (bytes)
HTTP_* satr HTTP_USER_AGENT ...
psgi.input ob'ekt (POST body)
psgi.errors glob \*STDERR
psgi.url_scheme satr "http"
[ 3. Javob formati ]
[$status, \@headers, \@body]
doc/psgi_cheatsheet.VI.txt view on Meta::CPAN
perl lib/HTTP/Handy.pm [port]
[ 2. Biến môi trưá»ng yêu cầu ($env) ]
REQUEST_METHOD chuá»i "GET" / "POST"
PATH_INFO chuá»i /index.html
QUERY_STRING chuá»i key=val
SERVER_NAME chuá»i hostname
SERVER_PORT sỠnguyên 8080
CONTENT_TYPE chuá»i content-type
CONTENT_LENGTH sỠnguyên (bytes)
HTTP_* chuá»i HTTP_USER_AGENT ...
psgi.input Äá»i tượng (POST body)
psgi.errors glob \*STDERR
psgi.url_scheme chuá»i "http"
[ 3. Äá»nh dạng phản há»i ]
[$status, \@headers, \@body]
doc/psgi_cheatsheet.ZH.txt view on Meta::CPAN
perl lib/HTTP/Handy.pm [port]
[ 2. 请æ±ç¯å¢åé ($env) ]
REQUEST_METHOD å符串 "GET" / "POST"
PATH_INFO å符串 /index.html
QUERY_STRING å符串 key=val
SERVER_NAME å符串 hostname
SERVER_PORT æ´æ° 8080
CONTENT_TYPE å符串 content-type
CONTENT_LENGTH æ´æ° (bytes)
HTTP_* å符串 HTTP_USER_AGENT ...
psgi.input 对象 (POST body)
psgi.errors glob \*STDERR
psgi.url_scheme å符串 "http"
[ 3. ååºæ ¼å¼ ]
[$status, \@headers, \@body]
lib/HTTP/Handy.pm view on Meta::CPAN
# Build psgi.input as an in-memory filehandle
# For 5.5.3 compatibility, use a temp file approach via a simple object
my $input = HTTP::Handy::Input->new($post_body);
my %env = (
'REQUEST_METHOD' => $method,
'PATH_INFO' => $path,
'QUERY_STRING' => $query_string,
'SERVER_NAME' => $server_name,
'SERVER_PORT' => $env_port,
'CONTENT_TYPE' => $headers{'content-type'} || '',
'CONTENT_LENGTH' => $content_length,
'psgi.input' => $input,
'psgi.errors' => \*STDERR,
'psgi.url_scheme' => 'http',
);
# Add HTTP_* headers
for my $name (keys %headers) {
my $key = 'HTTP_' . uc($name);
$key =~ s/-/_/g;
t/0004-server.t view on Meta::CPAN
# ok 2: status 200
like($st, qr{^HTTP/1\.0 200}, 'GET /hello: 200');
# ok 3: response body
is($bo, 'Hello, World!', 'GET /hello: body');
# ok 4: status line format is "HTTP/1.0 NNN <reason>"
like($st, qr{^HTTP/1\.0 \d{3} \S}, 'status line format');
# ok 5: Connection: close header is present
like(lc(defined $hh->{connection} ? $hh->{connection} : ''), qr{close}, 'Connection: close');
# ok 6: Content-Type header is present
like($hh->{'content-type'}, qr{text/plain}, 'Content-Type');
# --- Request data mapped to $env (ok 7-9) -------------------------------
# ok 7: REQUEST_METHOD is GET
($st, $hh, $bo) = http_req(path => '/echo-method');
is($bo, 'GET', 'REQUEST_METHOD GET');
# ok 8: QUERY_STRING is populated
($st, $hh, $bo) = http_req(path => '/echo-query?foo=bar&baz=1');
is($bo, 'foo=bar&baz=1', 'QUERY_STRING');