httppool

package module
v0.0.0-...-6a1d44f Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 18, 2017 License: Apache-2.0 Imports: 8 Imported by: 0

README

httppool

http连接池

安装

go get -u github.com/BoredTape/httppool

导入

import "github.com/BoredTape/httppool"

快速开始

func GET() {
	p := httppool.NewPools(&apool.Options{})

	header := map[string]string{
		"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36",
	}

	var request = apool.Request{
		Header: header,
		Url:    "www.google.com",
	}
	result := p.Open(request).Resault()
	fmt.Println(string(result.Body))
}

func POST(){
    p := httppool.NewPools(&apool.Options{})

	header := map[string]string{
		"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36",
	}
    form := map[string]string{
        "key":"value",
    }
	var request = apool.Request{
		Header: header,
		Url:    "www.google.com",
		Method: "POST",
		Form:   form,
	}
	result := p.Open(request).Resault()
	fmt.Println(string(result.Body))
}

func With_Proxy() {
	p := httppool.NewPools(&apool.Options{})

	header := map[string]string{
		"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36",
	}

	var request = apool.Request{
		Header: header,
		Url:    "www.google.com",
		Proxy:  "123.123.123.123",
	}
	result := p.Open(request).Resault()
	fmt.Println(string(result.Body))
}

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Options

type Options struct {
	Size    int
	Timeout time.Duration
}

type Pools

type Pools struct {
	Size    int
	Timeout time.Duration
	Clients chan *http.Client
}

func NewPools

func NewPools(opt *Options) *Pools

func (*Pools) Open

func (p *Pools) Open(args Request) *Respond

func (*Pools) SetPools

func (p *Pools) SetPools()

type Request

type Request struct {
	Header    map[string]string
	Url       string
	Method    string
	Form      map[string]string
	Proxy     string
	Cookiejar []*http.Cookie
	Timeout   int
}

type Respond

type Respond struct {
	Result *http.Response
	Err    error
}

func (*Respond) Resault

func (resp *Respond) Resault() *Result

func (*Respond) Transform

func (resp *Respond) Transform() *TReader

type Result

type Result struct {
	Body      []byte
	Err       error
	Cookie    string
	Cookiejar []*http.Cookie
}

type TReader

type TReader struct {
	Result   *transform.Reader
	Response *http.Response
	Err      error
}

func (*TReader) Resault

func (reader *TReader) Resault() *Result

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL