穿云 Golang SDK 使用指南

穿云 Golang SDK 是一款基于 go-resty/resty.v2 封装的高性能工具包,专为绕过 Cloudflare 防护、JA3 指纹识别及管理全球动态 IP 代理而设计。

安装与环境要求

  • Go 版本:继承 go-resty/resty v2 支持的所有 Go 版本。
  • 安装命令
# 使用 Go Modules 安装最新 V2 兼容版本
go get github.com/cloudbypass/golang-sdk

1. 初始化客户端

使用 cloudbypass.New() 创建实例。SDK 支持通过 BypassConfig 或环境变量(CB_APIKEY, CB_PROXY, CB_APIHOST)进行配置。

import "github.com/cloudbypass/golang-sdk/cloudbypass"

client := cloudbypass.New(cloudbypass.BypassConfig{
    Apikey: "你的服务密钥",
    Proxy:  "http://username:password@proxy-host:port", // 可选
})

2. 发起 V2 接口请求(针对 Cloudflare 验证)

V2 接口是突破 Cloudflare 5 秒盾、Turnstile 及 JS 质询的核心。SDK 已深度优化了 JA3 指纹HTTP/2 的全栈模拟。

package main

import (
    "fmt"
    "github.com/cloudbypass/golang-sdk/cloudbypass"
)

func main() {
    // 初始化配置,V2 建议设置 Proxy 提高绕过率
    client := cloudbypass.New(cloudbypass.BypassConfig{
        Apikey: "/* APIKEY */",
    })

    // 请求受 Cloudflare 保护的资源(如 Etherscan)
    resp, err := client.R().
        EnableTrace().
        Get("https://etherscan.io/accounts/label/lido")

    if err != nil {
        fmt.Println("请求失败:", err)
        return
    }

    // X-Cb-Status 用于判断穿云网关的执行状态
    fmt.Printf("状态码: %d, 网关状态: %s\n", resp.StatusCode(), resp.Header().Get("X-Cb-Status"))
    fmt.Println("响应体:", resp.String())
}

3. 全球代理 IP 提取(动态与时效 IP)

通过 NewProxy 方法可实现对 3.5 亿+ IP 池的精准调度,支持城市级定位及格式化输出。

package main

import (
    "fmt"
    "github.com/cloudbypass/golang-sdk/cloudbypass"
)

func main() {
    proxy, _ := cloudbypass.NewProxy("username-res:password")

    // 1. 提取全球动态住宅 IP
    fmt.Println("动态代理 (US):", proxy.SetDynamic().SetRegion("US").String())

    // 2. 提取时效代理(如 10 分钟稳定 IP)
    fmt.Println("时效代理 (10分钟):", proxy.SetExpire(600).String())

    // 3. 批量循环提取(适用于大规模并发)
    loop := proxy.SetExpire(600).SetRegion("US").Loop(5)
    for i := 0; i < 5; i++ {
        fmt.Println("循环提取:", loop.Next())
    }
}

4. 账户管理与重要说明

  • 查询余额
  balance, _ := cloudbypass.GetBalance("/* APIKEY */")
  fmt.Println("当前积分余额:", balance)
  • 自动重定向:SDK 会自动处理重定向逻辑,无需手动干预。请注意,被 Cloudflare 拦截后重定向产生的有效响应也会按规则消耗积分。
  • 服务密钥获取:请登录 穿云控制台 获取您的专属 APIKEY。

技术提醒:
集成过程中若遇到复杂的验证码挑战,建议先使用 穿云 API 代码生成器 快速生成对应语言的调试模版。所有 SDK 操作均已对齐最新的 V2 异步任务逻辑,确保在高强度抓取下的稳定性。