ServerXMLHTTP setProxy: chế độ 1 chọn kết nối trực tiếp
Dùng hằng số chế độ proxy chính xác của ServerXMLHTTP và giữ danh sách bỏ qua tách khỏi các điểm cuối proxy thay thế.
Lệnh gọi VBA này có vẻ như chọn proxy được lưu trong proxyServer:
http.setProxy 1, proxyServer, bypassList
Với MSXML ServerXMLHTTP, đối số đầu tiên chọn chế độ proxy. Các giá trị được ghi trong tài liệu là 0 cho cấu hình mặc định, 1 cho kết nối trực tiếp và 2 cho proxy được chỉ định rõ ràng. Truyền một địa chỉ sau 1 không biến chế độ trực tiếp thành chế độ proxy thủ công.
Ví dụ tối thiểu về proxy thủ công là:
Dim http As Object
Set http = CreateObject("MSXML2.ServerXMLHTTP.6.0")
http.setProxy 2, "proxy.example:8080", "<local>"
http.Open "GET", "https://example.com/", False
http.send
Điểm cuối trong ví dụ là một chỗ giữ chỗ. Để kiểm tra proxy công cộng, hãy thay nó bằng một địa chỉ HTTP từ danh sách proxy HTTP. Đối số thứ ba là danh sách bỏ qua; ở đây <local> dùng ngoại lệ tên cục bộ đã được ghi trong tài liệu. Đây không phải proxy thứ hai để thử nếu proxy đầu tiên thất bại. Vì vậy đặt IP và cổng của một proxy khác ở đó thể hiện loại cài đặt sai.
Dùng hằng số có tên ở nơi các tham chiếu VBA của bạn cung cấp chúng, hoặc định nghĩa hằng số liên quan cục bộ khi dùng liên kết muộn, để chế độ hiển thị khi rà soát.
Cũng cần lưu ý kiểu đối tượng. ServerXMLHTTP, XMLHTTP hướng trình duyệt và WinHttpRequest là các giao diện COM khác nhau. Một ví dụ chạy được cho đối tượng này không chứng minh nguồn cấu hình của đối tượng kia. Khi đối tượng đúng chọn chế độ proxy thủ công, hãy điều tra mọi lỗi kết nối, xác thực hoặc TLS còn lại trên tuyến đó.