Tất cảMớiCải tiếnĐã sửa
Cải tiến

Làm mới Playground, Reset và chuyển tiếp theo yêu cầu

Việc làm mới Playground không còn làm nhấp nháy trạng thái tĩnh trước khi trạng thái của bạn xuất hiện trở lại. Một nút Reset mới (yêu cầu xác nhận) sẽ xóa sạch cả ba tab request, cookie và các proxy được chuyển tiếp chỉ trong một lần thao tác. Một response giờ đây cũng có thể mang theo proxy ID hoặc User-Agent của nó vào request tiếp theo khi bạn yêu cầu, thay vì tự động áp dụng một cách ngầm định.

Mới

Xem chi phí credit của từng request

Mỗi API response hiện đã đi kèm một header x-foura-credits hiển thị chi phí của lượt gọi đó. Chế độ xem Budget mới trong Dashboard giúp phân tích chi tiết lượng credit tiêu thụ theo API key, domain, và client IP bằng biểu đồ dòng thời gian, đồng thời Playground cũng hiển thị thông tin tương tự trên mỗi response để bạn có thể ước lượng workload trước khi mở rộng quy mô.

Mới

Blog FourA hỗ trợ bảy ngôn ngữ

Mọi bài viết trên blog hiện được hiển thị bằng tiếng Anh, tiếng Bulgaria, tiếng Đức, tiếng Ba Lan, tiếng Việt, tiếng Trung và tiếng Ả Rập. Các code block, markdown và liên kết được giữ nguyên, và tính năng tìm kiếm trả về các tiêu đề đã được bản địa hóa.

Cải tiến

Các response trả về thông tin proxy đã xử lý chúng

Mỗi Single response hiện đã bao gồm ID của proxy đã xử lý request, và các Browser response cũng tương tự. Hữu ích cho các call dạng chuỗi cần duy trì trên cùng một proxy.

Mới

Tiếng Ả Rập chính thức hoạt động (với RTL)

Trang web chính hiện đã hiển thị bằng tiếng Ả Rập với bố cục right-to-left hoàn chỉnh, nâng tổng số ngôn ngữ hỗ trợ lên bảy. Nếu ngôn ngữ trình duyệt của bạn không khớp với trang bạn đang truy cập, một banner nhỏ sẽ gợi ý bạn chuyển đổi ngôn ngữ.

Cải tiến

Cột có thể sắp xếp và thanh bên có thể thu gọn

Nhấp vào tiêu đề cột trong Dashboard để sắp xếp. Tính năng này hoạt động trên Activity, API Keys và các session, vẫn được duy trì khi tự động làm mới, và Ctrl-click (Cmd trên Mac) sẽ xóa lựa chọn. Thanh bên cũng có thể thu gọn thành một thanh biểu tượng khi bạn muốn bảng có thêm không gian hiển thị.

Mới

Browser giải quyết Turnstile tương tác end-to-end

Các trang web chặn request đằng sau một widget thử thách tương tác (mô hình managed Turnstile là loại phổ biến) giờ đây sẽ trả về HTML đã được render khi bạn gọi Browser với unblocker: true. Đã được xác minh end-to-end đối với các trang web được bảo vệ đã biết vốn trước đây thường trả về trang thử thách.

Mới

Trang web và Playground bằng sáu ngôn ngữ

Chọn ngôn ngữ của bạn từ biểu tượng quả địa cầu trên header. Trang web và Playground hiện đã hỗ trợ tiếng Bulgaria, tiếng Trung, tiếng Đức, tiếng Ba Lan, tiếng Việt và tiếng Anh, đi kèm các URL hỗ trợ locale mà bạn có thể đánh dấu trang hoặc chia sẻ.

Đã sửa

Thắt chặt quyền truy cập cross-origin trên API

Chúng tôi đã thắt chặt quyền truy cập cross-origin để chỉ duy nhất foura.ai có thể gọi API kèm theo credentials. Chúng tôi cũng đã gia cố bộ lọc đầu vào trên endpoint metrics và loại bỏ fallback secret chỉ dùng cho môi trường phát triển. Các tích hợp hiện tại không thay đổi.

Đã sửa

Quy tắc validate tùy chỉnh được tính là thành công

Nếu bạn đã thiết lập validate.status.accept trên một request, engine sẽ xử lý phản hồi non-200 được chấp nhận như một thành công hoàn toàn. Trước đây, Activity vẫn gắn nhãn những trường hợp đó là thất bại, làm sai lệch số liệu thống kê sử dụng của bạn. Giờ đây, kết quả sẽ tuân theo quyết định validate của bạn, vì vậy mã 403 mà bạn đã chấp nhận sẽ hiển thị là thành công, chứ không phải App Fail.

Cải tiến

Nhãn Hoạt động khớp với Tổng quan

Hoạt động trước đây hiển thị các chuỗi kết quả thô như Application_fail trong khi Tổng quan sử dụng các nhãn thân thiện (App Fail) với màu sắc phù hợp. Hoạt động hiện sử dụng cùng các nhãn và màu sắc đó, giúp hai chế độ xem hiển thị nhất quán.

Đã sửa

Các trang không phải UTF-8 hiện được giải mã chính xác

Nếu bạn đang thu thập dữ liệu các trang tiếng Cyrillic, tiếng Trung, tiếng Nhật hoặc các trang không phải UTF-8 khác qua Single, phần body trước đây thường bị lỗi hiển thị (mojibake). Trước đây, chúng tôi đã ép buộc giải mã mọi response dưới dạng UTF-8 trước khi bạn nhận được các byte thô. Giờ đây, chúng tôi đọc charset từ response (Content-Type, sau đó đến <meta charset>, rồi cuối cùng là fallback về UTF-8) và giải mã chính xác. Cảm ơn Alexandar Kanchev (Sensika) đã báo cáo vấn đề này.

Đã sửa

Phát hiện proxy giả mạo phản hồi ngược lại request

Một số proxy ngoài thực tế không thực sự chuyển tiếp request của bạn. Chúng phản hồi ngược lại dưới dạng một bản dump máy chủ bằng plaintext và cố gắng thu thập dữ liệu bên trong. Hiện tại chúng tôi phát hiện ra pattern đó trước khi response chuyển đến code của bạn, vì vậy Single, Browser và Proxy Finder đều trả về một thông báo lỗi chính xác (hoặc thực hiện retry) thay vì dữ liệu rác.

Mới

Chạy lại bất kỳ dòng Activity nào trong Playground

Mỗi dòng Activity có payload được lưu trữ hiện đã có thể nhấp vào: hộp thoại sẽ hiển thị đầy đủ request và response (được định dạng đẹp mắt, đi kèm các nút sao chép và thông báo rõ ràng cho các request gặp lỗi trước khi tạo ra body). Nhấp vào 'Open in Playground' để tải lại chính xác call đó vào form cùng với response đã lưu trữ được render sẵn, nhờ đó bạn có thể tinh chỉnh các tham số và chạy lại mà không cần thiết lập lại từ đầu. Các payload được lưu trữ sẽ được giữ lại trong 24 giờ, giới hạn 200 payload gần nhất cho mỗi key.

Cải tiến

Mọi response API đều đi kèm một request ID

Các call đã xác thực giờ đây sẽ trả về cùng với một header X-Foura-Request-Id. Hãy lưu nó vào log của riêng bạn và bạn có thể đối chiếu bất kỳ request nào với dòng tương ứng của nó trong Activity, hoặc gửi nó cho bộ phận support để chúng tôi có thể tra cứu chính xác những gì đã xảy ra phía chúng tôi.