Supported HTTP Fingerprint Impersonation to Bypass Anti-Crawler Detection Effortlessly
Req

Req

Main

  • Docs
  • Blog

Socials

  • GitHub
  • English

  • 中文

Prologue

  • Introduction
  • Quick Start

Usage Tutorial

  • Debugging - Dump/Log/Trace
  • Quick HTTP Test
  • Force HTTP version
  • Handle Response
  • Set Body
  • Set Query Parameter
  • Set URL Path Parameter
  • Set Form Data
  • Set Header
  • Cookie
  • Set Certificates
  • Authentication
  • Customize Marshal and Unmarshal
  • Download
  • Upload
  • Auto Decode
  • Redirect Policy
  • Proxy
  • TLS Fingerprint
  • Unix Socket
  • Retry
  • Request and Response Middleware
  • Client and Transport Middleware
  • HTTP Fingerprint
  • Best Practices

Examples

  • Enable Debug via Flag or Env
  • Enable Debug Dynamically in Production
  • Handle Exceptions with Middleware
  • Record Prometheus Metrics Using Middleware
  • Build SDK Quickly with Req
  • Easily Write Crawlers with Req
  • Integrate with httpmock
  • Integrate with OpenTelemetry and Jaeger
  • Integrate with kubernetes client-go
  • Integrate with tencentcloud-sdk-go
  • Integrate with goquery

Quick API Reference

  • Client
  • Request

Prologue

  • Introduction
  • Quick Start

Usage Tutorial

  • Debugging - Dump/Log/Trace
  • Quick HTTP Test
  • Force HTTP version
  • Handle Response
  • Set Body
  • Set Query Parameter
  • Set URL Path Parameter
  • Set Form Data
  • Set Header
  • Cookie
  • Set Certificates
  • Authentication
  • Customize Marshal and Unmarshal
  • Download
  • Upload
  • Auto Decode
  • Redirect Policy
  • Proxy
  • TLS Fingerprint
  • Unix Socket
  • Retry
  • Request and Response Middleware
  • Client and Transport Middleware
  • HTTP Fingerprint
  • Best Practices

Examples

  • Enable Debug via Flag or Env
  • Enable Debug Dynamically in Production
  • Handle Exceptions with Middleware
  • Record Prometheus Metrics Using Middleware
  • Build SDK Quickly with Req
  • Easily Write Crawlers with Req
  • Integrate with httpmock
  • Integrate with OpenTelemetry and Jaeger
  • Integrate with kubernetes client-go
  • Integrate with tencentcloud-sdk-go
  • Integrate with goquery

Quick API Reference

  • Client
  • Request

Unix Socket

If you want to access via a specific unix socket instead of TCP, use Client.SetUnixSocket:

client := req.C()
client.SetUnixSocket("/var/run/custom.sock")
client.SetBaseURL("http://example.local")

resp, err := client.R().Get("/index.html")
← TLS Fingerprint
Retry →
  • Powered by Cloudflare, Hugo, and Doks