direktori cari
archive archive/tar archive/zip bufio bufio(缓存) builtin builtin(内置包) bytes bytes(包字节) compress compress/bzip2(压缩/bzip2) compress/flate(压缩/flate) compress/gzip(压缩/gzip) compress/lzw(压缩/lzw) compress/zlib(压缩/zlib) container container/heap(容器数据结构heap) container/list(容器数据结构list) container/ring(容器数据结构ring) context context(上下文) crypto crypto(加密) crypto/aes(加密/aes) crypto/cipher(加密/cipher) crypto/des(加密/des) crypto/dsa(加密/dsa) crypto/ecdsa(加密/ecdsa) crypto/elliptic(加密/elliptic) crypto/hmac(加密/hmac) crypto/md5(加密/md5) crypto/rand(加密/rand) crypto/rc4(加密/rc4) crypto/rsa(加密/rsa) crypto/sha1(加密/sha1) crypto/sha256(加密/sha256) crypto/sha512(加密/sha512) crypto/subtle(加密/subtle) crypto/tls(加密/tls) crypto/x509(加密/x509) crypto/x509/pkix(加密/x509/pkix) database database/sql(数据库/sql) database/sql/driver(数据库/sql/driver) debug debug/dwarf(调试/dwarf) debug/elf(调试/elf) debug/gosym(调试/gosym) debug/macho(调试/macho) debug/pe(调试/pe) debug/plan9obj(调试/plan9obj) encoding encoding(编码) encoding/ascii85(编码/ascii85) encoding/asn1(编码/asn1) encoding/base32(编码/base32) encoding/base64(编码/base64) encoding/binary(编码/binary) encoding/csv(编码/csv) encoding/gob(编码/gob) encoding/hex(编码/hex) encoding/json(编码/json) encoding/pem(编码/pem) encoding/xml(编码/xml) errors errors(错误) expvar expvar flag flag(命令行参数解析flag包) fmt fmt go go/ast(抽象语法树) go/build go/constant(常量) go/doc(文档) go/format(格式) go/importer go/parser go/printer go/scanner(扫描仪) go/token(令牌) go/types(类型) hash hash(散列) hash/adler32 hash/crc32 hash/crc64 hash/fnv html html html/template(模板) image image(图像) image/color(颜色) image/color/palette(调色板) image/draw(绘图) image/gif image/jpeg image/png index index/suffixarray io io io/ioutil log log log/syslog(日志系统) math math math/big math/big math/bits math/bits math/cmplx math/cmplx math/rand math/rand mime mime mime/multipart(多部分) mime/quotedprintable net net net/http net/http net/http/cgi net/http/cookiejar net/http/fcgi net/http/httptest net/http/httptrace net/http/httputil net/http/internal net/http/pprof net/mail net/mail net/rpc net/rpc net/rpc/jsonrpc net/smtp net/smtp net/textproto net/textproto net/url net/url os os os/exec os/signal os/user path path path/filepath(文件路径) plugin plugin(插件) reflect reflect(反射) regexp regexp(正则表达式) regexp/syntax runtime runtime(运行时) runtime/debug(调试) runtime/internal/sys runtime/pprof runtime/race(竞争) runtime/trace(执行追踪器) sort sort(排序算法) strconv strconv(转换) strings strings(字符串) sync sync(同步) sync/atomic(原子操作) syscall syscall(系统调用) testing testing(测试) testing/iotest testing/quick text text/scanner(扫描文本) text/tabwriter text/template(定义模板) text/template/parse time time(时间戳) unicode unicode unicode/utf16 unicode/utf8 unsafe unsafe
watak

  • import "net/http/cgi"

  • 概述

  • 索引

概述

cgi包实现了RFC 3875中规定的CGI(通用网关接口)。

请注意,使用CGI意味着启动一个新的进程来处理每个请求,这通常比使用长时间运行的服务器效率低。此软件包主要用于与现有系统兼容。

索引

  • func Request() (*http.Request, error)

  • func RequestFromMap(params map[string]string) (*http.Request, error)

  • func Serve(handler http.Handler) error

  • type Handler

  • func (h *Handler) ServeHTTP(rw http.ResponseWriter, req *http.Request)

文件包

child.go host.go

func Request

func Request() (*http.Request, error)

请求返回当前环境中表示的HTTP请求。这假定当前程序由CGI环境中的Web服务器运行。如果适用,填充返回的请求的正文。

func RequestFromMap

func RequestFromMap(params map[string]string) (*http.Request, error)

RequestFromMap从CGI变量创建一个http.Request。返回的请求的正文字段未填充。

func Serve

func Serve(handler http.Handler) error

Serve在当前活动的CGI请求上执行提供的Handler,如果有的话。如果没有当前的CGI环境,则返回错误。提供的处理程序可能无法使用http.DefaultServeMux。

type Handler

Handler在具有CGI环境的子进程中运行可执行文件。

type Handler struct {
        Path string // path to the CGI executable
        Root string // root URI prefix of handler or empty for "/"        // Dir specifies the CGI executable's working directory.        // If Dir is empty, the base directory of Path is used.        // If Path has no base directory, the current working        // directory is used.
        Dir string

        Env        []string    // extra environment variables to set, if any, as "key=value"
        InheritEnv []string    // environment variables to inherit from host, as "key"
        Logger     *log.Logger // optional log for errors or nil to use log.Print
        Args       []string    // optional arguments to pass to child process
        Stderr     io.Writer   // optional stderr for the child process; nil means os.Stderr        // PathLocationHandler specifies the root http Handler that        // should handle internal redirects when the CGI process        // returns a Location header value starting with a "/", as        // specified in RFC 3875 § 6.3.2. This will likely be        // http.DefaultServeMux.        //        // If nil, a CGI response with a local URI path is instead sent        // back to the client and not redirected internally.
        PathLocationHandler http.Handler}

func (*Handler) ServeHTTP

func (h *Handler) ServeHTTP(rw http.ResponseWriter, req *http.Request)
Artikel sebelumnya: Artikel seterusnya: