Lewati ke konten

Data backlink dalam format JSON: kredit gratis $100, tanpa kartu, masuk dengan Google.

SEOMasters.dev
SEOMasters.devDaftar

Periksa backlink saya mengembalikan hasil kosong: tabel kesalahan

Alat Anda hanya seaman penanganan kesalahannya. Di bawah ini, kegagalan yang sebenarnya terjadi, penyebab pastinya, dan apakah percobaan ulang masuk akal.

Empat gembok industri berbeda tergantung di rak yang mewakili berbagai keadaan kesalahan

Aturan yang mencakup sebagian besar kasus

Coba ulang kesalahan jaringan. Jangan pernah coba ulang 401 atau 402. Jenis pertama memperbaiki dirinya sendiri dalam hitungan detik; jenis kedua membutuhkan manusia, dan membanjirinya hanya akan memenuhi log Anda.

Setiap respons JSON memiliki bidang ok, dan yang terautentikasi menambahkan _credits dengan biaya panggilan dan saldo tersisa. Periksa ok pada body meskipun status HTTP terlihat baik.

Jeda waktu percobaan ulang di bawah ini adalah saran teknik kami, bukan batas yang didokumentasikan. Dokumentasi API yang kami miliki tidak mempublikasikan batas laju, jadi buat batas Anda sendiri dan pertahankan agar moderat.

Mengapa 401 dan 402 tidak pernah dicoba ulang

401 adalah masalah kunci, dan 402 adalah masalah saldo. Keduanya tidak akan sembuh antara dua percobaan yang berjarak satu detik, sehingga percobaan ulang hanya menambah kebisingan pada log Anda tanpa manfaat lain.

Menunggu juga tidak memperbaiki 402. Saldo tetap di tempatnya hingga seseorang menambahnya dari halaman akun, sehingga satu-satunya reaksi yang berguna adalah pesan yang jelas dan peringatan kepada pemilik anggaran.

401 layak diperiksa pada header atau parameter kunci, dan pastikan kunci belum diganti. Mencoba ulang kunci yang salah yang sama beberapa kali tidak membuktikan apa-apa.

Kunci yang buruk dan saldo kosong juga terlihat berbeda di dasbor Anda. Letakkan pada peringatan terpisah, agar orang yang menambah saldo tidak dibangunkan karena salah ketik kunci, dan orang yang memutar kunci tidak dipanggil karena masalah saldo.

Kesalahan jaringan dan backoff

Timeout atau reset koneksi dapat hilang dengan sendirinya, sehingga itu adalah satu-satunya kasus yang layak dicoba lagi. Tunggu 1, 2, 4, dan kemudian 8 detik, tambahkan sedikit jitter, dan berhenti setelah percobaan keempat.

Jeda waktu tersebut adalah saran kami, bukan batas yang didokumentasikan. Pertahankan batas Anda sendiri, log setiap percobaan ulang, dan beri peringatan saat percobaan ulang meningkat, karena tingkat percobaan ulang yang meningkat biasanya merupakan tanda pertama masalah hulu.

Jaga timeout di sisi Anda agar eksplisit, dalam konstanta bernama. Default implisit yang berubah dengan peningkatan pustaka adalah alasan umum mengapa pekerjaan malam hari mulai gagal hanya di satu mesin.

Perhatikan waktu respons hulu serta tingkat kegagalan. Respons lambat yang tidak pernah gagal masih dapat mengikat pekerja Anda, dan loop percobaan ulang memperburuk perlambatan tersebut.

Gejala, penyebab, respons

GejalaPenyebabCoba ulang?Apa yang harus dilakukan
HTTP 401Kunci hilang, salah ketik, atau dicabutTidakPeriksa header atau nilai key=, lalu halaman akun
HTTP 402Kredit telah habisTidakIsi ulang dalam USDT (TRC-20) dari halaman akun; kunci yang sama dilanjutkan
ok tidak benar pada HTTP 200Parameter buruk, seperti URL di mana domain seharusnya beradaTidakValidasi input; kirim example.com, bukan https://example.com/page
Timeout atau reset koneksiGangguan jaringan atau huluYa, 3 hingga 4 kaliBackoff 1, 2, 4, 8 detik dengan jitter
Hasil kosong untuk situs baruBelum diindeks; pembaruan dilakukan setiap bulanTidakTampilkan "belum diindeks" dengan tanggal indeks
Angka berbeda dari alat lainIndeks berbeda dan rumus DR yang berbedaTidakBandingkan tren dalam satu alat, lihat referensi DR
Baris berhenti di 50.000Batas paginasiTidakLihat catatan paginasi
Saldo turun lebih cepat dari rencanaAksi berbayar dalam loop, atau panggilan 3 kredit pada jalur panasn/aLog _credits, izinkan tindakan dalam daftar putih
Tips: uji dengan cURL terlebih dahulu

Sebelum menyalahkan kode Anda, tempel URL yang gagal ke cURL dengan kunci yang sama. Jika berhasil di sana, bug ada di klien Anda. Jika gagal di sana juga, jawabannya ada di tabel. Pemeriksaan ini telah menyelesaikan lebih banyak tiket daripada pencarian log mana pun.

Jalankan debugging, secara berurutan

  1. 1

    Reproduksi dengan curl

    Ambil URL yang gagal dari aplikasi Anda dan jalankan secara manual dengan kunci yang sama. Jika curl berhasil, kode Anda adalah masalahnya.

  2. 2

    Coba aksi gratis

    overview pada domain yang sama tidak memerlukan kunci. Jika berhasil, indeks baik-baik saja dan masalahnya ada di autentikasi atau kredit.

  3. 3

    Baca saldo

    402 tidak ambigu, tetapi panggilan berbayar yang gagal setelah keberhasilan gratis biasanya mengarah pada kredit atau salah ketik kunci.

  4. 4

    Periksa input

    Huruf kecil, tanpa skema, tanpa path, tanpa titik akhir. Sebagian besar kegagalan ok berakhir di sini.

Tangan mengampelas cabang kasar menjadi bentuk halus di meja kerja kayu

Normalisasi domain sebelum panggilan

Sebagian besar panggilan yang gagal dimulai di kotak input, bukan di jaringan. Pengguna menempelkan apa pun yang mereka salin, dan kode Anda harus mengubahnya menjadi domain telanjang sebelum API melihatnya.

Hapus skema dan path

Hapus skema, path apa pun, dan string kueri. Alamat artikel yang ditempelkan menjadi host-nya, dan hanya host yang dikirim ke hulu.

Ubah host menjadi huruf kecil juga. Pertahankan pembersihan dalam satu fungsi, agar aturan yang sama berjalan di formulir, pekerjaan batch, dan pengujian.

Uji pembersihan dengan lima atau enam input tempelan nyata, termasuk satu dengan garis miring akhir dan satu dengan string kueri. Kasus-kasus tersebut mengungkapkan bug yang tidak pernah ditunjukkan oleh contoh bersih.

Tentukan sekali apa yang harus dilakukan dengan www.

Pilih satu aturan untuk www. dan terapkan dalam satu fungsi, agar situs yang sama tidak pernah dicari dengan dua ejaan.

Tulis aturan di sebelah fungsi. Pengembang berikutnya yang bertemu www yang liar akan menemukan keputusan tersebut, bukan pendapat kedua.

Aturan mana pun yang Anda pilih, simpan dalam satu file dan tulis satu pengujian untuknya. Pengujian adalah catatan keputusan, dan pendek.

Tolak apa yang tidak bisa menjadi domain

Tolak input dengan spasi atau label kosong, dan tampilkan pesan pendek di formulir. String yang ditolak tidak memakan biaya, sementara yang buruk memakan biaya panggilan gagal dan pengguna yang bingung.

Titik akhir adalah kasus yang aneh. Hapus satu di akhir host dan anggap yang lain tidak valid.

Tampilkan penolakan di sebelah bidang, bukan sebagai toast yang menghilang. Pengguna yang dapat melihat apa yang salah memperbaikinya dalam satu percobaan.

Apa yang harus ditampilkan kepada pengguna

Jangan pernah mencetak kesalahan hulu mentah di antarmuka. Petakan 401 dan 402 ke "layanan tidak tersedia" generik dan kirim detailnya ke log Anda sendiri dan peringatan. Pengunjung tidak dapat memperbaiki saldo Anda, dan pesan tersebut membuat alat Anda terlihat rusak.

Tunas tanaman kecil muncul dari tanah kering dengan tangan tukang kebun di dekatnya

Hasil kosong dan usia indeks

Ketika seseorang mengetik periksa backlink saya ke formulir Anda dan mendapatkan hasil kosong, jawaban kosong tidak selalu merupakan kesalahan. Ini sering berarti domain baru, terlalu kecil, atau sekadar belum diindeks, dan layar harus mengatakan yang mana.

Situs baru diluncurkan

Situs yang diluncurkan minggu lalu mungkin tidak memiliki domain penunjuk di indeks. Tampilkan 'belum diindeks' bersama dengan tanggal indeks, dan tawarkan panggilan overview gratis sebagai pemeriksaan silang.

Jangan meng-cache jawaban kosong itu terlalu lama. Beberapa jam sudah cukup, dan pembangunan ulang berikutnya dapat memasukkan situs tersebut.

Beritahu pengunjung kapan indeks terakhir kali dibangun, dengan kata-kata sederhana. Tanggal di sebelah jawaban kosong menjelaskan kesenjangan lebih baik daripada pesan yang lebih panjang.

Catatan satu baris di UI Anda sendiri sudah cukup di sini. Tidak ada yang mengharapkan indeks langsung, dan kalimat sederhana di sebelah tanggal indeks dibaca sebagai jujur.

Angka yang tidak sesuai dengan alat lain

Crawler yang berbeda melihat bagian web yang berbeda. Baca angka DR sebagai posisi dalam satu alat, dan arahkan pembaca ke referensi DR untuk rumusnya.

Catatan singkat di bawah angka menghemat lebih banyak waktu dukungan daripada permintaan maaf apa pun setelah kejadian.

Jika dua pembacaan berbeda, bandingkan jumlah domain penunjuk terlebih dahulu. Rumus DR sederhana, sehingga sebagian besar perbedaan hanya berasal dari jumlah tersebut.

Baris yang berhenti di 50.000

Ketika daftar berhenti di batas atas, jawabannya benar untuk apa yang diizinkan API. Labelkan pemotongan dan tautkan catatan paginasi daripada mencoba halaman yang lebih dalam.

Halaman yang lebih dalam setelah titik itu bukan percobaan ulang. Itu adalah kueri yang berbeda, dan menganggapnya sebagai satu adalah bagaimana loop berjalan selama berjam-jam.

Pertahankan batas terlihat juga dalam ekspor, agar spreadsheet yang dibuka sebulan kemudian masih menunjukkan bahwa daftar dibatasi.

Menampilkan jumlah baris di sebelah tabel mengubah pemotongan menjadi fakta yang terlihat. Pembaca yang melihat 50.000 baris tahu untuk meminta pertanyaan yang lebih sempit.

Sebelum kode percobaan ulang dikirim

  • 401 dan 402 tidak pernah dicoba ulang
  • Timeout dicoba ulang dengan backoff dan jumlah percobaan tetap
  • Setiap respons diperiksa untuk ok, apa pun status HTTP
  • Input dinormalisasi sebelum panggilan, bukan setelah gagal
  • Kesalahan hulu masuk ke log Anda sendiri, dan pengunjung melihat pesan generik
  • Hasil kosong menampilkan tanggal indeks bukan layar kosong

Pertanyaan terkait

Bisakah pengguna saya mengetik URL apa pun ke kotak?
Biarkan mereka, lalu normalisasi sendiri. Hapus skema, path, string kueri, dan www. jika Anda memilih untuk melakukannya, ubah host menjadi huruf kecil, dan baru kemudian panggil API. Hulu mengharapkan domain telanjang, sehingga input yang tidak bersih adalah penyebab paling umum dari panggilan yang gagal.
Haruskah saya meng-cache kegagalan?
Cache hasil "belum diindeks" kosong selama beberapa jam, karena indeks hanya berubah setiap bulan. Jangan pernah meng-cache 401 atau 402 untuk waktu yang lama. Keduanya hilang begitu kunci atau saldo diperbaiki, dan kesalahan yang di-cache akan menyembunyikan perbaikan tersebut.
Apakah aksi gratis dihitung terhadap apa pun?
Mereka tidak memakan kredit. Empat gratis adalah domain, overview, stats, dan suggest. Tetap cache mereka, karena bersikap sopan tidak memakan biaya apa pun dan menjaga latensi Anda sendiri tetap rendah.