zoukankan      html  css  js  c++  java
  • 超时和代理

    package main
    
    import (
    	"io"
    	"net/http"
    	"net/url"
    	"os"
    )
    
    func main() {
    	// proxyUrl, _ := url.Parse("socks5://127.0.0.1:1080")
    	proxyUrl, _ := url.Parse("http://127.0.0.1:8087")
    	t := &http.Transport{
    		Proxy: http.ProxyURL(proxyUrl),
    	}
    	// 一般主要两种,http 代理 和 shadow socks 的代码, socks5
    	client := http.Client{Transport: t}
    	r, _ := client.Get("https://google.com")
    	defer func() { _ = r.Body.Close() }()
    
    	_, _ = io.Copy(os.Stdout, r.Body)
    	// session
    	// session.Get
    	// session.Post
    	// session.Put
    	// session.Delete
    }
    package main
    
    import (
    	"context"
    	"net"
    	"net/http"
    	"time"
    )
    
    func main() {
    	// https://colobu.com/2016/07/01/the-complete-guide-to-golang-net-http-timeouts/
    	client := &http.Client{
    		Timeout: 10 * time.Second,
    		Transport: &http.Transport{
    			DialContext: func(ctx context.Context, network, addr string) (conn net.Conn, e error) {
    				return net.DialTimeout(network, addr, 2*time.Second)
    			},
    			ResponseHeaderTimeout: 5 * time.Second,
    			TLSHandshakeTimeout:   2 * time.Second,
    			IdleConnTimeout:       60 * time.Second,
    		},
    	}
    	r, _ := client.Get("http://httpbin.org/delay/10")
    }
    

      

  • 相关阅读:
    【数据库领域】mysql中in与or对比
    数据库优化
    数据库-索引
    数据库-事务
    数据库-视图
    数据库设计
    数据库编程提高
    数据库高级操作
    数据库基本操作
    with-上下文管理器
  • 原文地址:https://www.cnblogs.com/yzg-14/p/13281439.html
Copyright © 2011-2022 走看看