import org.htmlunit.ProxyConfig;
import org.htmlunit.WebClient;

try (WebClient browser = new WebClient()) {
    ProxyConfig proxy =
        new ProxyConfig("proxy.example.net", 8080, "http");
    proxy.addHostsToProxyBypass("localhost");
    browser.getOptions().setProxyConfig(proxy);

    browser.getPage("https://example.net/");
}

Đặt ProxyConfig trên WebClient tải trang trước khi điều hướng. Cách này dùng không gian tên org.htmlunit; các phụ thuộc cũ dùng com.gargoylesoftware.htmlunit và có thể cung cấp các hàm tạo khác.

Thay máy chủ proxy và cổng số nguyên bằng một ứng viên chưa xác thực từ danh sách proxy HTTP cho ví dụ trang công khai này. "http" của hàm tạo mô tả bên trung gian, kể cả với trang HTTPS. Không đặt tiền tố URL vào đối số tên máy chủ và không đổi giao thức chỉ để khớp với đích.

Giá trị bỏ qua là biểu thức chính quy, không phải quy tắc PAC hay danh sách môi trường phân tách bằng dấu phẩy. Nếu một yêu cầu bất ngờ đi trực tiếp, hãy so sánh máy chủ được yêu cầu với các mẫu đó và xác nhận rằng nó dùng WebClient này.

Một WebClient hoặc ứng dụng HTTP được tạo riêng không kế thừa đối tượng cấu hình này. Cấu hình các phiên bản dùng lại trước công việc của chúng thay vì thay đổi trạng thái toàn cục quanh các yêu cầu đồng thời. Việc xác minh đích và đăng nhập trang web vẫn tách biệt; proxy đã xác thực cũng cần giao diện thông tin xác thực của phiên bản HtmlUnit đã cài. Ví dụ: HtmlUnit 4.21.0 giới hạn phạm vi thông tin xác thực proxy theo máy chủ và cổng.

Bài viết liên quan