Tutorial

Menggunakan Fiddler untuk Memeriksa Traffic API CaptchaAI

Ketika solve CAPTCHA gagal dan log Anda tidak menampilkan cukup detail, intersepsi traffic HTTP aktual akan mengungkapkan apa yang terjadi. Fiddler menangkap setiap request dan respons antara kode Anda dan API CaptchaAI, memungkinkan Anda melihat payload, header, dan timing yang tepat.

Kapan Menggunakan Fiddler untuk Debugging

Skenario Apa yang Diungkapkan Fiddler
API mengembalikan error tapi log kode Anda minim Isi request lengkap, header, dan respons
Request solve seperti terhenti Apakah request mencapai server atau timeout
Token tampak tidak valid saat diinjeksikan Konten token tepat dan masalah encoding
Kegagalan terkait proxy Apakah request di-route melalui proxy yang diharapkan
Masalah rate limit Timing request dan pola respons 429

Setup Fiddler untuk Traffic HTTPS

Langkah 1: Instal dan Konfigurasi Dekripsi HTTPS

Fiddler bertindak sebagai proxy lokal yang mengintersensi traffic HTTPS. Anda harus mengaktifkan dekripsi HTTPS untuk melihat payload API CaptchaAI:

Fiddler Everywhere:

  1. Buka Settings → HTTPS
  2. Aktifkan "Capture HTTPS traffic"
  3. Instal sertifikat root Fiddler saat diminta
  4. Percayakan sertifikat di certificate store OS Anda

Fiddler Classic (Windows):

  1. Tools → Options → HTTPS
  2. Centang "Decrypt HTTPS traffic"
  3. Klik "Actions" → "Trust Root Certificate"

Langkah 2: Konfigurasi Kode Anda untuk Menggunakan Proxy Fiddler

Fiddler mendengarkan di 127.0.0.1:8866 (Fiddler Everywhere) atau 127.0.0.1:8888 (Fiddler Classic).

Python (requests):

import requests

proxies = {
    "http": "http://127.0.0.1:8866",
    "https": "http://127.0.0.1:8866",
}

# Submit CAPTCHA task through Fiddler
response = requests.post(
    "https://ocr.captchaai.com/in.php",
    data={
        "key": "YOUR_API_KEY",
        "method": "userrecaptcha",
        "googlekey": "SITE_KEY",
        "pageurl": "https://example.com",
        "json": 1,
    },
    proxies=proxies,
    verify=False,  # Required for Fiddler's self-signed cert
)
print(response.json())

JavaScript (Node.js dengan axios):

const axios = require("axios");
const HttpsProxyAgent = require("https-proxy-agent");

const agent = new HttpsProxyAgent("http://127.0.0.1:8866");

async function submitTask() {
  const response = await axios.post(
    "https://ocr.captchaai.com/in.php",
    new URLSearchParams({
      key: "YOUR_API_KEY",
      method: "userrecaptcha",
      googlekey: "SITE_KEY",
      pageurl: "https://example.com",
      json: 1,
    }),
    {
      httpsAgent: agent,
      proxy: false, // Disable axios default proxy handling
    }
  );
  console.log(response.data);
}

submitTask();

Catatan: verify=False (Python) menonaktifkan verifikasi SSL untuk sertifikat intersepsi Fiddler. Hanya gunakan ini saat debugging — hapus di produksi.

Filter Traffic CaptchaAI

Tambahkan filter untuk hanya melihat request CaptchaAI dalam sesi yang padat.

Filter Fiddler Di Mana Saja

  1. Klik tab Filter
  2. Tambahkan aturan: Host -> contains -> ocr.captchaai.com
  3. Terapkan filternya

Filter Klasik Fiddler

  1. Klik tab Filter
  2. Centang "Gunakan Filter"
  3. Di bawah "Host", pilih "Tampilkan Host berikut saja"
  4. Masukkan: ocr.captchaai.com

Sekarang hanya permintaan API CaptchaAI yang muncul di daftar sesi.

Memeriksa Permintaan dan Respon

Kirim Permintaan (dalam.php)

Saat Anda mengambil penyerahan tugas, periksa bidang berikut di Fiddler:

Panel Apa yang Harus Diperiksa
Header Tipe Konten harus application/x-www-form-urlencoded
Badan Permintaan Verifikasi key, method, googlekey/token CAPTCHA3ZZ, pageurl sudah benar
Badan Respon Harus mengembalikan {"status":1,"request":"TASK_ID"} jika berhasil
Kode Respons 200 = Oke, 403 = masalah utama, 429 = tarif terbatas

Permintaan Jajak Pendapat (res.php)

Saat melakukan pemungutan suara untuk mendapatkan hasil:

Panel Apa yang Harus Diperiksa
Badan Permintaan key, action=get, id=TASK_ID, json=1
Badan Respon CAPCHA_NOT_READY saat memproses, {"status":1,"request":"TOKEN"} jika berhasil
Waktu Periksa interval antar jajak pendapat – harus 5+ detik

Masalah Umum yang Terlihat di Fiddler

Apa yang Anda Lihat Artinya
Badan permintaan memiliki googlekey kosong Ekstraksi kunci situs gagal di bagian hulu
Tanggapan: {"status":0,"request":"ERROR_WRONG_USER_KEY"} Kunci API tidak valid
Tanggapan: {"status":0,"request":"ERROR_ZERO_BALANCE"} Akun tidak memiliki dana
Tanggapan: {"status":0,"request":"ERROR_NO_SLOT_AVAILABLE"} Server sibuk – coba lagi
Tidak ada respons (batas waktu) Network/proxy memblokir koneksi
429 kode status Terlalu banyak permintaan – memperlambat pemungutan suara

Menggunakan Breakpoint

Breakpoint menjeda request sebelum dikirim sehingga Anda dapat mengubahnya:

Menetapkan Breakpoint

Fiddler Everywhere:

  1. Rules → Add Rule
  2. Match: URL contains ocr.captchaai.com/in.php
  3. Action: "Pause before sending"

Fiddler Classic:

  1. Rules → Automatic Breakpoints → Before Request
  2. Atau ketik bpu ocr.captchaai.com di QuickExec bar

Apa yang Harus Dilakukan di Breakpoint

Saat request dijeda:

  1. Periksa request body — verifikasi semua parameter benar
  2. Edit parameter — ubah method, googlekey, atau pageurl untuk menguji nilai berbeda
  3. Lanjutkan — klik "Run to Completion" untuk mengirim request yang telah dimodifikasi
  4. Periksa respons — lihat apakah perubahan Anda memperbaiki masalah

Ini berguna untuk menguji apakah nilai parameter menyebabkan kegagalan tanpa mengubah kode.

Replay Request yang Gagal

Ketika request gagal, Anda dapat me-replay dari Fiddler:

  1. Klik kanan sesi yang gagal
  2. Pilih ReplayReissue Requests
  3. Request yang sama dikirim ulang dengan header dan body yang sama

Untuk replay dengan modifikasi:

  1. Klik kanan → Edit in Composer
  2. Ubah parameternya
  3. Klik Execute

Ini memungkinkan Anda menguji perbaikan tanpa me-restart aplikasi.

Gunakan Fiddler Composer untuk membuat request CaptchaAI dari awal:

Submit task:

POST https://ocr.captchaai.com/in.php
Content-Type: application/x-www-form-urlencoded

key=YOUR_API_KEY&method=userrecaptcha&googlekey=SITE_KEY&pageurl=https://example.com&json=1

Polling hasil:

GET https://ocr.captchaai.com/res.php?key=YOUR_API_KEY&action=get&id=TASK_ID&json=1

Ini lebih cepat daripada menulis kode ketika Anda hanya ingin memverifikasi bahwa API berfungsi.

Analisis Timing

Tampilan Timeline Fiddler menunjukkan durasi request:

Metrik Nilai Sehat Indikator Masalah
DNS lookup < 50 ms > 500 ms = masalah DNS
TCP connect < 100 ms > 1000 ms = masalah jaringan
TLS handshake < 200 ms > 1000 ms = masalah sertifikat
Server response (in.php) < 500 ms > 2000 ms = bottleneck server
Server response (res.php) < 200 ms > 1000 ms = tidak biasa — periksa status

Export Sesi untuk Support

Jika Anda perlu berbagi data debug dengan support CaptchaAI:

  1. Pilih sesi yang relevan di Fiddler
  2. File → Export Sessions → Selected Sessions
  3. Pilih format HTTPArchive (.har)
  4. Hapus API key Anda dari file yang diekspor sebelum dibagikan
Cari dan ganti API key aktual Anda dengan "REDACTED" di file .har

Pemecahan Masalah

Masalah Penyebab Perbaikan
Fiddler tidak menampilkan traffic Kode tidak di-route melalui proxy Fiddler Set proxy ke 127.0.0.1:8866 (Everywhere) atau 8888 (Classic)
SSL certificate error Sertifikat root Fiddler tidak dipercaya Reinstall sertifikat Fiddler; tambahkan ke trusted roots
Fiddler menampilkan response body yang berantakan Respons dikompresi Aktifkan tombol "Decode" di toolbar (atau Rules → Remove All Encodings)
Breakpoint tidak terpicu Filter atau rule tidak cocok Verifikasi pola URL persis cocok dengan ocr.captchaai.com
Traffic muncul tapi body kosong Content-Length mismatch atau streaming response Klik sesi dan tunggu respons penuh dimuat

Pertanyaan Umum

Apakah penggunaan Fiddler memengaruhi timing solve CAPTCHA?

Minimal. Fiddler menambahkan ~1–5 ms latensi per request karena proxy hop. Ini tidak signifikan dibandingkan waktu solve CAPTCHA (10–60 detik). Untuk debugging yang sangat time-sensitive, perhatikan bahwa timestamp Fiddler mencerminkan kapan Fiddler menerima data, bukan kapan kode Anda mengirimnya.

Bisakah saya menggunakan Fiddler dengan browser-based CAPTCHA solving?

Ya. Konfigurasi browser Anda untuk menggunakan Fiddler sebagai proxy-nya, dan Anda akan melihat semua request terkait CAPTCHA — termasuk widget loading, challenge fetch, dan token submission. Ini berguna untuk memahami lifecycle CAPTCHA secara penuh.

Haruskah saya menggunakan Fiddler Classic atau Fiddler Everywhere?

Fiddler Everywhere bersifat cross-platform (Windows, macOS, Linux) dengan UI modern. Fiddler Classic hanya untuk Windows tapi memiliki kemampuan scripting lebih canggih (FiddlerScript). Untuk debugging CaptchaAI dasar, keduanya berfungsi.

Artikel Terkait

  • Whitelist IP dan Keamanan API Key CaptchaAI
  • Rotasi API Key CaptchaAI
  • Referensi Error Code CaptchaAI

Langkah Selanjutnya

Debug error API lebih cepat — mulai dengan CaptchaAI dan gunakan Fiddler saat Anda memerlukan inspeksi traffic tingkat request yang lebih mendalam.

Panduan terkait:

Komentar dinonaktifkan untuk artikel ini.