Cổng proxy
Gửi lưu lượng của bạn qua các exit node của FourA từ bất kỳ client nào hỗ trợ URL proxy: trình duyệt, công cụ tải xuống, hoặc scraper bạn đang chạy. Cổng proxy mở một tunnel đến đích bạn chỉ định và sao chép byte theo cả hai chiều, do đó nó truyền tải được những gì API JSON không hỗ trợ: stream, các tệp tải xuống lớn và toàn bộ phiên trình duyệt.
Bản Beta. Cổng proxy đang trong giai đoạn beta. Lưu lượng qua cổng này hiện chưa bị tính phí, chưa được bao gồm trong dịch vụ giám sát hoặc cam kết thời gian hoạt động (uptime), và tên các tùy chọn vẫn có thể thay đổi. Hãy thông báo cho chúng tôi nếu gặp sự cố.
Kết nối
| Cài đặt | Giá trị |
|---|---|
| Host | proxy.foura.ai |
| Port | 34004 |
| Giao thức | HTTP CONNECT với Basic authentication |
| Cổng đích | 443 và 80 |
Thông tin xác thực được lấy từ trang tổng quan. Tạo một người dùng proxy trong mục Proxy ở thanh bên để nhận tên người dùng và mật khẩu được tạo tự động. Chúng được tách biệt có chủ đích khỏi API key của bạn: quá trình bắt tay proxy truyền dưới dạng văn bản rõ trên mỗi kết nối, và người dùng proxy có thể được xoay vòng mà không ảnh hưởng đến tích hợp API của bạn. Xem Proxy Users.
curl -x http://USERNAME:PASSWORD@proxy.foura.ai:34004 https://example.com
import requests
proxy = "http://USERNAME:PASSWORD@proxy.foura.ai:34004"
r = requests.get("https://example.com", proxies={"https": proxy, "http": proxy})
print(r.status_code)
Cổng này chỉ hỗ trợ CONNECT. Mọi client đều sẽ tạo tunnel cho target https://. Target http:// thuần túy chỉ hoạt động khi client của bạn cũng tạo tunnel cho nó (curl: --proxytunnel); client chuyển tiếp request thuần túy tới proxy sẽ nhận lỗi 405 Method Not Allowed.
Tùy chọn truyền trong Username
Mọi thông tin phía sau thông tin xác thực là danh sách các cặp -key-value, theo thứ tự bất kỳ:
USERNAME-network-residential-country-de-session-a1
Các giá trị là từ viết thường. Dấu gạch ngang bên trong một giá trị sẽ bắt đầu một tùy chọn mới, vì vậy -city-new-york được hiểu là hai tùy chọn và bị từ chối. Một key không xác định cũng bị từ chối chứ không bao giờ bị bỏ qua: -contry-de viết sai chính tả sẽ trả về lỗi 400 kèm tên các key được hỗ trợ, thay vì phân phát từ sai quốc gia.
| Tùy chọn | Giá trị | Chức năng |
|---|---|---|
network |
shared (mặc định, bí danh pool), residential |
Địa chỉ đến từ mạng nào. Shared là các exit riêng của FourA, bao gồm trong gói của bạn. Residential là địa chỉ nhà riêng, lấy từ lưu lượng premium có sẵn trong gói cộng với lưu lượng bạn đã mua. |
fallback |
residential, off |
Chỉ dành cho mạng shared. Sử dụng exit residential khi mạng shared không thể xử lý request. Tắt trừ khi được yêu cầu, và chỉ kích hoạt khi gói của bạn có lưu lượng premium và còn hạn mức. |
country |
ISO 3166-1 alpha-2, có thể lặp lại | Quốc gia exit mà target nhìn thấy. Lặp lại tùy chọn này cho phạm vi nhiều quốc gia: -country-de-country-fr. |
session |
1 đến 32 chữ cái, chữ số hoặc dấu gạch dưới | Các kết nối dùng chung tên sẽ dùng chung địa chỉ (sticky). Bỏ qua tùy chọn này để nhận địa chỉ mới cho mỗi kết nối (rotating). |
state |
một từ | Khu vực. Chỉ áp dụng cho residential. |
city |
một từ | Thành phố. Chỉ áp dụng cho residential. |
asn |
một số | Mạng, theo số AS. Chỉ áp dụng cho residential. |
os |
windows, android, ios, mac |
Loại thiết bị mà địa chỉ thuộc về. Chỉ áp dụng cho residential. |
lifetime |
3 đến 1440 |
Số phút giữ địa chỉ residential dạng sticky. Chỉ áp dụng cho residential. |
Mọi tùy chọn ngoại trừ network, fallback, và session đều chấp nhận any, giúp xóa giá trị đã lưu trên proxy user cho riêng kết nối này.
Ba tổ hợp sau sẽ bị từ chối bằng lỗi 400 thay vì xử lý một phần:
state,city,asn,os, hoặclifetimetrên mạng shared. Mạng shared chỉ được chọn theo quốc gia và không thể chi tiết hơn; hãy thêm-network-residentialđể nhắm mục tiêu theo thành phố.-fallback-residentialcùng với-network-residential. Cơ chế fallback không có tác dụng trên chính mạng mà nó chuyển tiếp đến.- Nhắm mục tiêu chi tiết hơn khi đang bật fallback. Fallback có thể kích hoạt hoặc không, do đó yêu cầu chọn thành phố mà hệ thống chỉ có thể đáp ứng đôi khi sẽ bị từ chối.
Sessions
Trên mạng shared, một session có tên sẽ giữ nguyên exit miễn là bạn tiếp tục sử dụng nó, theo khung thời gian trượt mười phút. Nếu exit đó ngừng hoạt động, session sẽ chuyển sang exit khác thay vì báo lỗi. Trình duyệt được điều khiển qua cổng phải luôn mang tên session: một lần tải trang sẽ mở hàng chục kết nối, và nếu không có session thì mỗi kết nối sẽ đến từ một địa chỉ khác nhau.
Trên mạng residential, một session có tên sẽ giữ địa chỉ của nó trong lifetime phút, hoặc theo giá trị mặc định của mạng khi bạn không thiết lập.
Saved defaults
Cấu hình targeting được lưu trên proxy user trong dashboard sẽ áp dụng cho mọi kết nối được thực hiện qua user đó, giúp username luôn ngắn gọn. Bất kỳ giá trị nào bạn đặt trong username sẽ được ưu tiên cho kết nối đó, và any sẽ hủy giá trị đã lưu. Giá trị residential mặc định đã lưu chỉ tiêu tốn tài nguyên khi gói cước của bạn cho phép; nếu không, kết nối sẽ được phục vụ từ mạng chia sẻ.
CONNECT headers
Client có khả năng thêm header vào CONNECT request có thể gửi các tùy chọn tương tự dưới dạng header. Header sẽ được ưu tiên hơn tùy chọn tương ứng trong username.
| Header | Same as |
|---|---|
X-Foura-Network |
-network- |
X-Foura-Fallback |
-fallback- (residential or off) |
X-Foura-Country |
-country-, phân tách bằng dấu phẩy nếu có nhiều giá trị |
X-Foura-Session |
-session- |
X-Foura-State |
-state- |
X-Foura-City |
-city- |
X-Foura-Asn |
-asn- |
X-Foura-Lifetime |
-lifetime- |
curl -x http://USERNAME:PASSWORD@proxy.foura.ai:34004 \
--proxy-header "X-Foura-Country: de" \
https://example.com
Phản hồi
Một tunnel mở thành công sẽ trả về 200 Connection established. Mọi phản hồi từ chối đều đi kèm header X-Foura-Error chứa lý do tóm tắt trên một dòng, hãy đọc header này trước tiên.
| Trạng thái | Thời điểm |
|---|---|
| 400 Bad Request | Request sai định dạng, hoặc một tùy chọn mà FourA không thể đáp ứng. X-Foura-Error nêu rõ tùy chọn đó và các giá trị được hỗ trợ. |
| 403 Forbidden | Cổng đích không được hỗ trợ, hoặc đích đến không phải là máy chủ internet công cộng. |
| 405 Method Not Allowed | Gửi request thông thường thay vì CONNECT. |
| 407 Proxy Authentication Required | Thiếu hoặc sai thông tin xác thực. Phản hồi không bao giờ chỉ rõ phần nào bị sai. |
| 408 Request Timeout | Client đã kết nối nhưng không gửi dữ liệu trong 15 giây. |
| 429 Too Many Requests | Proxy user đã mở đủ 200 tunnel, hoặc cổng proxy đã đạt giới hạn dung lượng hay tốc độ mở tunnel. |
| 502 Bad Gateway | Không tìm thấy exit node hoạt động cho đích đến trong thời gian cho phép, hoặc bộ phân giải của FourA không thể tra cứu máy chủ. Hai trường hợp này có thông báo khác nhau trong X-Foura-Error. |
| 503 Service Unavailable | Cổng proxy đang tắt. |
Giới hạn
- Tối đa 200 tunnel mở cùng lúc cho mỗi proxy user.
- Quá trình tìm exit node kéo dài tối đa 45 giây trước khi cổng proxy hủy với mã 502. Một session đã có sẵn exit node thường kết nối trong chưa đầy một giây.
- Tunnel không có dữ liệu truyền nhận ở cả hai chiều sẽ bị đóng sau hai phút không hoạt động.
- Proxy user bị vô hiệu hóa hoặc xóa trong dashboard sẽ dừng xác thực trong vòng một phút.
Đo lường mức sử dụng
Dữ liệu truyền qua cổng proxy được tính vào băng thông trên trang Usage & Limits của bạn, và dữ liệu qua residential exit node cũng được tính vào lưu lượng premium. Kết nối chỉ định -network-residential sau khi hết hạn mức premium vẫn được phục vụ; phương án dự phòng hoặc cấu hình residential mặc định đã lưu sẽ không được áp dụng trong trạng thái này, thay vào đó mạng chia sẻ sẽ phục vụ kết nối.
Liên quan
- Proxy Users: Tạo proxy user và tạo chuỗi kết nối trong dashboard
- Proxy Request: Giải pháp thay thế bằng JSON API, tích hợp sẵn cơ chế thử lại và xác thực
- Reuse a Proxy Across Requests: Duy trì một exit node trên JSON API
- Usage & Limits: Băng thông và lưu lượng premium theo gói dịch vụ của bạn