Bỏ qua để đến nội dung

Dữ liệu backlink dưới dạng JSON: $100 tín dụng miễn phí, không cần thẻ, đăng nhập bằng Google.

SEOMasters.dev
SEOMasters.devĐăng ký

Check my backlink trả về kết quả trống: bảng lỗi

Công cụ của bạn chỉ thực sự ổn định khi xử lý lỗi tốt. Dưới đây là các lỗi thực tế xảy ra, nguyên nhân chính xác và việc thử lại có hợp lý hay không.

Bốn loại ổ khóa công nghiệp khác nhau treo trên giá đại diện cho các trạng thái lỗi khác nhau

Quy tắc bao phủ hầu hết các trường hợp

Thử lại các lỗi mạng. Không bao giờ thử lại 401 hoặc 402. Loại đầu tự khắc phục sau vài giây; loại thứ hai cần sự can thiệp của con người, và việc gửi lại liên tục chỉ làm đầy nhật ký của bạn.

Mỗi phản hồi JSON đều có trường ok, và các phản hồi xác thực thêm _credits với chi phí gọi và số dư còn lại. Hãy kiểm tra ok trong thân phản hồi ngay cả khi trạng thái HTTP có vẻ ổn.

Các khoảng thời gian thử lại dưới đây là lời khuyên từ đội kỹ thuật của chúng tôi, không phải giới hạn được ghi trong tài liệu. Tài liệu API mà chúng tôi nắm giữ không công bố giới hạn tốc độ, vì vậy hãy tự đặt giới hạn trên của riêng bạn và giữ nó ở mức vừa phải.

Tại sao không thử lại 401 và 402

401 là vấn đề về khóa, còn 402 là vấn đề về số dư. Không có trường hợp nào tự hết sau hai lần thử cách nhau một giây, nên việc thử lại chỉ thêm nhiễu vào nhật ký của bạn mà không mang lại lợi ích gì.

Việc chờ đợi cũng không khắc phục được 402. Số dư sẽ giữ nguyên cho đến khi ai đó nạp tiền từ trang tài khoản, vì vậy phản ứng hữu ích nhất là một thông báo rõ ràng và cảnh báo cho người chịu trách nhiệm về ngân sách.

401 cần được xem xét lại tiêu đề hoặc tham số khóa, và kiểm tra xem khóa có bị thay thế hay không. Thử lại cùng một khóa sai nhiều lần không chứng minh được điều gì.

Một khóa sai và một số dư trống cũng hiển thị khác nhau trên bảng điều khiển của bạn. Hãy đặt chúng vào các cảnh báo riêng biệt, để người nạp tiền không bị đánh thức vì một lỗi gõ phím, và người thay khóa không bị gọi khi chỉ là vấn đề về số dư.

Lỗi mạng và cơ chế giảm tần suất

Thời gian chờ hoặc kết nối bị ngắt có thể tự khắc phục, vì vậy đó là những trường hợp đáng để thử lại. Chờ 1, 2, 4 và sau đó là 8 giây, thêm một chút độ rung (jitter), và dừng lại sau lần thử thứ tư.

Các khoảng thời gian này là lời khuyên của chúng tôi, không phải giới hạn được ghi trong tài liệu. Hãy tự đặt giới hạn trên của riêng bạn, ghi lại mọi lần thử lại và cảnh báo khi số lần thử tăng lên, vì tỷ lệ thử lại tăng thường là dấu hiệu đầu tiên của sự cố từ phía máy chủ.

Hãy giữ thời gian chờ trên phía của bạn rõ ràng, dưới dạng một hằng số có tên. Giá trị mặc định ẩn thay đổi khi nâng cấp thư viện là nguyên nhân phổ biến khiến một công việc chạy ban đêm bắt đầu lỗi chỉ trên một máy chủ.

Hãy theo dõi thời gian phản hồi từ máy chủ cũng như tỷ lệ lỗi. Một phản hồi chậm nhưng không bao giờ lỗi vẫn có thể chiếm dụng worker của bạn, và vòng lặp thử lại sẽ làm tình trạng chậm này tồi tệ hơn.

Triệu chứng, nguyên nhân, phản hồi

Triệu chứngNguyên nhânThử lại?Cách xử lý
HTTP 401Thiếu khóa, gõ sai hoặc khóa đã bị thu hồiKhôngKiểm tra tiêu đề hoặc giá trị key=, sau đó kiểm tra trang tài khoản
HTTP 402Hết tín dụngKhôngNạp tiền bằng USDT (TRC-20) từ trang tài khoản; cùng một khóa sẽ hoạt động lại
ok không phải là true trên HTTP 200Tham số sai, chẳng hạn như URL khi trường hợp đó yêu cầu tên miềnKhôngXác thực đầu vào; gửi example.com, không phải https://example.com/page
Hết thời gian chờ hoặc kết nối bị ngắtSự cố mạng hoặc máy chủCó, 3 đến 4 lầnGiảm tần suất 1, 2, 4, 8 giây với độ rung (jitter)
Kết quả trống cho một trang web mớiChưa được lập chỉ mục; cập nhật hàng thángKhôngHiển thị "chưa được lập chỉ mục" cùng với ngày lập chỉ mục
Số liệu khác với công cụ khácChỉ số khác và công thức DR khácKhôngSo sánh xu hướng trong cùng một công cụ, xem Tham chiếu DR
Dòng dữ liệu dừng ở 50.000Giới hạn phân trangKhôngXem Ghi chú về phân trang
Số dư giảm nhanh hơn dự kiếnHành động trả phí trong vòng lặp, hoặc một lệnh gọi tốn 3 tín dụng trên đường đi phổ biếnKhông áp dụngGhi lại _credits, cho phép danh sách các hành động
Mẹo: hãy thử với cURL trước

Trước khi đổ lỗi cho mã của bạn, hãy dán URL bị lỗi vào cURL với cùng một khóa. Nếu nó hoạt động ở đó, lỗi nằm ở máy khách của bạn. Nếu nó vẫn lỗi ở đó, câu trả lời nằm trong bảng. Kiểm tra này đã giải quyết nhiều phiếu hỗ trợ hơn bất kỳ tìm kiếm nhật ký nào.

Một quy trình gỡ lỗi, theo thứ tự

  1. 1

    Tái tạo với curl

    Lấy URL bị lỗi ra khỏi ứng dụng của bạn và chạy thủ công với cùng một khóa. Nếu curl hoạt động, mã của bạn là nguyên nhân.

  2. 2

    Thử một hành động miễn phí

    overview trên cùng một tên miền không cần khóa. Nếu nó trả về kết quả, chỉ mục ổn và sự cố nằm ở xác thực hoặc tín dụng.

  3. 3

    Đọc số dư

    402 là rõ ràng, nhưng một lệnh gọi trả phí bị lỗi sau khi thành công với hành động miễn phí thường chỉ ra vấn đề về tín dụng hoặc lỗi gõ phím trong khóa.

  4. 4

    Kiểm tra đầu vào

    Chữ thường, không có lược đồ, không có đường dẫn, không có dấu chấm cuối. Hầu hết các lỗi ok đều bắt đầu từ đây.

Đôi tay đang chà nhũa một nhánh thô ráp thành hình dạng mượt mà trên bàn làm việc bằng gỗ

Chuẩn hóa tên miền trước khi gọi

Hầu hết các lệnh gọi thất bại bắt đầu từ hộp đầu vào, không phải từ mạng. Người dùng dán bất cứ thứ gì họ đã sao chép, và mã của bạn phải chuyển đổi đó thành một tên miền thuần túy trước khi API nhận được nó.

Loại bỏ lược đồ và đường dẫn

Loại bỏ lược đồ, bất kỳ đường dẫn nào và chuỗi truy vấn. Một địa chỉ bài báo được dán vào sẽ trở thành máy chủ của nó, và chỉ máy chủ mới được gửi lên máy chủ.

Chuyển đổi máy chủ thành chữ thường. Giữ việc làm sạch trong một hàm, để cùng một quy tắc chạy trong biểu mẫu, trong công việc hàng loạt và trong các bài kiểm tra.

Kiểm tra việc làm sạch với năm hoặc sáu đầu vào thực tế được dán vào, bao gồm một cái có dấu gạch chéo cuối và một cái có chuỗi truy vấn. Những trường hợp này làm lộ ra các lỗi mà một ví dụ sạch sẽ không bao giờ hiển thị.

Quyết định một lần cách xử lý www.

Chọn một quy tắc cho www. và áp dụng nó trong một hàm duy nhất, để cùng một trang web không bao giờ được tra cứu dưới hai cách viết.

Viết quy tắc xuống bên cạnh hàm. Nhà phát triển tiếp theo gặp phải www thừa sẽ tìm thấy quyết định đó, chứ không phải một ý kiến thứ hai.

Bất kể quy tắc nào bạn chọn, hãy giữ nó trong một tệp và viết một bài kiểm tra cho nó. Bài kiểm tra là bản ghi của quyết định, và nó ngắn gọn.

Từ chối những gì không thể là tên miền

Từ chối đầu vào có khoảng trắng hoặc nhãn trống, và hiển thị một thông báo ngắn trong biểu mẫu. Một chuỗi bị từ chối không tốn gì, trong khi một chuỗi xấu sẽ gây ra một lệnh gọi thất bại và một người dùng bối rối.

Dấu chấm cuối là trường hợp kỳ lạ. Loại bỏ một dấu chấm ở cuối máy chủ và coi bất kỳ thứ gì khác là không hợp lệ.

Hiển thị việc từ chối bên cạnh trường, không phải dưới dạng thông báo biến mất. Một người dùng có thể thấy lỗi sẽ khắc phục nó trong một lần thử.

Những gì cần hiển thị cho người dùng

Không bao giờ in lỗi máy chủ thô trong giao diện. Ánh xạ 401 và 402 thành "dịch vụ không khả dụng" chung và gửi chi tiết đến nhật ký của riêng bạn và một cảnh báo. Khách truy cập không thể sửa số dư của bạn, và thông báo đó khiến công cụ của bạn trông bị lỗi.

Một chồi cây nhỏ nhú lên từ đất khô với bàn tay của người làm vườn ở gần

Kết quả trống và tuổi của chỉ mục

Khi ai đó nhập "check my backlink" vào biểu mẫu của bạn và nhận được kết quả trống, một câu trả lời trống không phải lúc nào cũng là lỗi. Nó thường có nghĩa là tên miền mới, quá nhỏ hoặc đơn giản là chưa được lập chỉ mục, và màn hình nên nói rõ điều đó.

Một trang web mới hoàn toàn

Một trang web được ra mắt vào tuần trước có thể không có tên miền trỏ đến trong chỉ mục. Hiển thị "chưa được lập chỉ mục" cùng với ngày lập chỉ mục, và cung cấp lệnh gọi overview miễn phí để kiểm tra chéo.

Không lưu trữ kết quả trống đó trong thời gian dài. Vài giờ là đủ, và lần xây dựng lại tiếp theo có thể đưa trang web vào chỉ mục.

Hãy cho người biết khi chỉ mục được xây dựng lại lần cuối, bằng lời lẽ đơn giản. Một ngày bên cạnh một kết quả trống giải thích khoảng trống tốt hơn một thông báo dài hơn.

Một ghi chú ngắn trong giao diện người dùng của riêng bạn là đủ ở đây. Không ai mong đợi một chỉ mục trực tiếp, và một câu văn đơn giản bên cạnh ngày lập chỉ mục đọc như sự trung thực.

Một con số không khớp với công cụ khác

Các trình thu thập dữ liệu khác nhau thấy các phần khác nhau của web. Hãy đọc số DR như một vị trí trong một công cụ cụ thể, và hướng người đọc đến Tham chiếu DR để biết công thức.

Một ghi chú ngắn dưới con số đó sẽ tiết kiệm thời gian hỗ trợ hơn bất kỳ lời xin lỗi nào sau đó.

Nếu hai lần đọc khác nhau, hãy so sánh số lượng tên miền trỏ đến trước tiên. Công thức DR đơn giản, vì vậy hầu hết các bất đồng đều quy về số lượng.

Các dòng dừng ở 50.000

Khi một danh sách dừng ở giới hạn, câu trả lời là chính xác cho những gì API cho phép. Hãy dán nhãn điểm cắt và liên kết đến Ghi chú về phân trang thay vì cố gắng truy cập một trang sâu hơn.

Các trang sâu hơn qua điểm đó không phải là một lần thử lại. Đó là một truy vấn khác, và việc coi chúng là một là cách một vòng lặp chạy trong nhiều giờ.

Hãy giữ điểm cắt hiển thị trong bản xuất, để một bảng tính mở ra một tháng sau vẫn hiển thị rằng danh sách đã bị giới hạn.

Hiển thị số hàng bên cạnh bảng biến điểm cắt thành một sự thật có thể nhìn thấy. Một người đọc thấy 50.000 hàng sẽ biết cách đặt câu hỏi hẹp hơn.

Trước khi mã thử lại được triển khai

  • 401 và 402 không bao giờ được thử lại
  • Thời gian chờ thử lại với cơ chế giảm tần suất và số lần thử cố định
  • Mọi phản hồi đều được kiểm tra ok, bất kể trạng thái HTTP
  • Đầu vào được chuẩn hóa trước khi gọi, không phải sau khi nó thất bại
  • Lỗi máy chủ được ghi vào nhật ký của riêng bạn, và khách truy cập thấy một thông báo chung
  • Kết quả trống hiển thị ngày lập chỉ mục thay vì màn hình trống

Các câu hỏi liên quan

Người dùng của tôi có thể nhập bất kỳ URL nào vào hộp không?
Hãy để họ làm vậy, sau đó tự chuẩn hóa nó. Loại bỏ lược đồ, đường dẫn, chuỗi truy vấn và www. nếu bạn chọn, chuyển đổi máy chủ thành chữ thường, và sau đó mới gọi API. Máy chủ yêu cầu một tên miền thuần túy, vì vậy đầu vào không sạch là nguyên nhân phổ biến nhất gây ra lệnh gọi thất bại.
Tôi có nên lưu trữ các lỗi không?
Lưu trữ kết quả "chưa được lập chỉ mục" trống trong vài giờ, vì chỉ mục chỉ thay đổi hàng tháng. Không bao giờ lưu trữ 401 hoặc 402 trong thời gian dài. Những lỗi đó sẽ hết ngay khi khóa hoặc số dư được sửa, và một lỗi được lưu trữ sẽ ẩn đi sự khắc phục đó.
Các hành động miễn phí có tính vào bất cứ thứ gì không?
Chúng không tốn tín dụng. Bốn hành động miễn phí là domain, overview, stats và suggest. Vẫn hãy lưu trữ chúng, vì sự lịch sự không tốn gì và giữ độ trễ của riêng bạn ở mức thấp.