You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="theme-color" content="#375EAB">
<title>cgi - The Go Programming Language</title>
<link type="text/css" rel="stylesheet" href="../../../../lib/godoc/style.css">
<link rel="stylesheet" href="../../../../lib/godoc/jquery.treeview.css"> <script type="text/javascript">window.initFuncs = [];</script> </head> <body>
<div id='lowframe' style="position: fixed; bottom: 0; left: 0; height: 0; width: 100%; border-top: thin solid grey; background-color: white; overflow: auto;"> ... </div><!-- #lowframe -->
<div id="topbar" class="wide"><div class="container"> <div class="top-heading" id="heading-wide"><a href="http://localhost:6060/">The Go Programming Language</a></div> <div class="top-heading" id="heading-narrow"><a href="http://localhost:6060/">Go</a></div> <a href="index.html#" id="menu-button"><span id="menu-button-arrow">▽</span></a> <form method="GET" action="http://localhost:6060/search"> <div id="menu"> <a href="http://localhost:6060/doc/">Documents</a> <a href="http://localhost:6060/pkg/">Packages</a> <a href="http://localhost:6060/project/">The Project</a> <a href="http://localhost:6060/help/">Help</a> <a href="http://localhost:6060/blog/">Blog</a>
<input type="text" id="search" name="q" class="inactive" value="Search" placeholder="Search"> </div> </form>
</div></div>
<div id="page" class="wide"> <div class="container">
<h1>Package cgi</h1>
<div id="nav"></div>
<!--
Copyright 2009 The Go Authors. All rights reserved. Use of this source code is governed by a BSD-style license that can be found in the LICENSE file. --> <!--
Note: Static (i.e., not template-generated) href and id attributes start with "pkg-" to make it impossible for them to conflict with generated attributes (some of which correspond to Go identifiers). -->
<script type='text/javascript'> document.ANALYSIS_DATA = null; document.CALLGRAPH = null; </script>
<div id="short-nav"> <dl> <dd><code>import "net/http/cgi"</code></dd> </dl> <dl> <dd><a href="index.html#pkg-overview" class="overviewLink">Overview</a></dd> <dd><a href="index.html#pkg-index" class="indexLink">Index</a></dd> </dl> </div> <!-- The package's Name is printed as title by the top-level template --> <div id="pkg-overview" class="toggleVisible"> <div class="collapsed"> <h2 class="toggleButton" title="Click to show Overview section">Overview ▹</h2> </div> <div class="expanded"> <h2 class="toggleButton" title="Click to hide Overview section">Overview ▾</h2> <p> Package cgi implements CGI (Common Gateway Interface) as specified in RFC 3875. </p> <p> Note that using CGI means starting a new process to handle each request, which is typically less efficient than using a long-running server. This package is intended primarily for compatibility with existing systems. </p>
</div> </div>
<div id="pkg-index" class="toggleVisible"> <div class="collapsed"> <h2 class="toggleButton" title="Click to show Index section">Index ▹</h2> </div> <div class="expanded"> <h2 class="toggleButton" title="Click to hide Index section">Index ▾</h2>
<!-- Table of contents for API; must be named manual-nav to turn off auto nav. --> <div id="manual-nav"> <dl> <dd><a href="index.html#Request">func Request() (*http.Request, error)</a></dd> <dd><a href="index.html#RequestFromMap">func RequestFromMap(params map[string]string) (*http.Request, error)</a></dd> <dd><a href="index.html#Serve">func Serve(handler http.Handler) error</a></dd> <dd><a href="index.html#Handler">type Handler</a></dd> <dd> <a href="index.html#Handler.ServeHTTP">func (h *Handler) ServeHTTP(rw http.ResponseWriter, req *http.Request)</a></dd> </dl> </div><!-- #manual-nav -->
<h4>Package files</h4> <p> <span style="font-size:90%"> <a href="http://localhost:6060/src/net/http/cgi/child.go">child.go</a> <a href="http://localhost:6060/src/net/http/cgi/host.go">host.go</a> </span> </p> </div><!-- .expanded --> </div><!-- #pkg-index -->
<div id="pkg-callgraph" class="toggle" style="display: none"> <div class="collapsed"> <h2 class="toggleButton" title="Click to show Internal Call Graph section">Internal call graph ▹</h2> </div> <!-- .expanded --> <div class="expanded"> <h2 class="toggleButton" title="Click to hide Internal Call Graph section">Internal call graph ▾</h2> <p> In the call graph viewer below, each node is a function belonging to this package and its children are the functions it calls—perhaps dynamically. </p> <p> The root nodes are the entry points of the package: functions that may be called from outside the package. There may be non-exported or anonymous functions among them if they are called dynamically from another package. </p> <p> Click a node to visit that function's source code. From there you can visit its callers by clicking its declaring <code>func</code> token. </p> <p> Functions may be omitted if they were determined to be unreachable in the particular programs or tests that were analyzed. </p> <!-- Zero means show all package entry points. --> <ul style="margin-left: 0.5in" id="callgraph-0" class="treeview"></ul> </div> </div> <!-- #pkg-callgraph -->
<h2 id="Request">func <a href="http://localhost:6060/src/net/http/cgi/child.go?s=604:641#L19">Request</a></h2> <pre>func Request() (*<a href="../index.html">http</a>.<a href="../index.html#Request">Request</a>, <a href="../../../builtin/index.html#error">error</a>)</pre> <p> Request returns the HTTP request as represented in the current environment. This assumes the current program is being run by a web server in a CGI environment. The returned Request's Body is populated, if applicable. </p>
<h2 id="RequestFromMap">func <a href="http://localhost:6060/src/net/http/cgi/child.go?s=1163:1231#L42">RequestFromMap</a></h2> <pre>func RequestFromMap(params map[<a href="../../../builtin/index.html#string">string</a>]<a href="../../../builtin/index.html#string">string</a>) (*<a href="../index.html">http</a>.<a href="../index.html#Request">Request</a>, <a href="../../../builtin/index.html#error">error</a>)</pre> <p> RequestFromMap creates an http.Request from CGI variables. The returned Request's Body field is not populated. </p>
<h2 id="Serve">func <a href="http://localhost:6060/src/net/http/cgi/child.go?s=3875:3913#L136">Serve</a></h2> <pre>func Serve(handler <a href="../index.html">http</a>.<a href="../index.html#Handler">Handler</a>) <a href="../../../builtin/index.html#error">error</a></pre> <p> Serve executes the provided Handler on the currently active CGI request, if any. If there's no current CGI environment an error is returned. The provided handler may be nil to use http.DefaultServeMux. </p>
<h2 id="Handler">type <a href="http://localhost:6060/src/net/http/cgi/host.go?s=1283:2347#L37">Handler</a></h2> <pre>type Handler struct { Path <a href="../../../builtin/index.html#string">string</a> <span class="comment">// path to the CGI executable</span> Root <a href="../../../builtin/index.html#string">string</a> <span class="comment">// root URI prefix of handler or empty for "/"</span>
<span class="comment">// Dir specifies the CGI executable's working directory.</span> <span class="comment">// If Dir is empty, the base directory of Path is used.</span> <span class="comment">// If Path has no base directory, the current working</span> <span class="comment">// directory is used.</span> Dir <a href="../../../builtin/index.html#string">string</a>
Env []<a href="../../../builtin/index.html#string">string</a> <span class="comment">// extra environment variables to set, if any, as "key=value"</span> InheritEnv []<a href="../../../builtin/index.html#string">string</a> <span class="comment">// environment variables to inherit from host, as "key"</span> Logger *<a href="../../../log/index.html">log</a>.<a href="../../../log/index.html#Logger">Logger</a> <span class="comment">// optional log for errors or nil to use log.Print</span> Args []<a href="../../../builtin/index.html#string">string</a> <span class="comment">// optional arguments to pass to child process</span>
<span class="comment">// PathLocationHandler specifies the root http Handler that</span> <span class="comment">// should handle internal redirects when the CGI process</span> <span class="comment">// returns a Location header value starting with a "/", as</span> <span class="comment">// specified in RFC 3875 § 6.3.2. This will likely be</span> <span class="comment">// http.DefaultServeMux.</span> <span class="comment">//</span> <span class="comment">// If nil, a CGI response with a local URI path is instead sent</span> <span class="comment">// back to the client and not redirected internally.</span> PathLocationHandler <a href="../index.html">http</a>.<a href="../index.html#Handler">Handler</a> }</pre> <p> Handler runs an executable in a subprocess with a CGI environment. </p>
<h3 id="Handler.ServeHTTP">func (*Handler) <a href="http://localhost:6060/src/net/http/cgi/host.go?s=2914:2984#L88">ServeHTTP</a></h3> <pre>func (h *<a href="index.html#Handler">Handler</a>) ServeHTTP(rw <a href="../index.html">http</a>.<a href="../index.html#ResponseWriter">ResponseWriter</a>, req *<a href="../index.html">http</a>.<a href="../index.html#Request">Request</a>)</pre>
<div id="footer"> Build version go1.6.<br> Except as <a href="https://developers.google.com/site-policies#restrictions">noted</a>, the content of this page is licensed under the Creative Commons Attribution 3.0 License, and code is licensed under a <a href="http://localhost:6060/LICENSE">BSD license</a>.<br> <a href="http://localhost:6060/doc/tos.html">Terms of Service</a> | <a href="http://www.google.com/intl/en/policies/privacy/">Privacy Policy</a> </div>
</div><!-- .container --> </div><!-- #page -->
<!-- TODO(adonovan): load these from <head> using "defer" attribute? --> <script type="text/javascript" src="../../../../lib/godoc/jquery.js"></script> <script type="text/javascript" src="../../../../lib/godoc/jquery.treeview.js"></script> <script type="text/javascript" src="../../../../lib/godoc/jquery.treeview.edit.js"></script>
<script type="text/javascript" src="../../../../lib/godoc/godocs.js"></script>
</body> </html>
|