Chúng tôi không thể kết nối với máy chủ HTTPS WebRequest
vì thông báo lỗi này:
The request was aborted: Could not create SSL/TLS secure channel.
Chúng tôi biết rằng máy chủ không có chứng chỉ HTTPS hợp lệ với đường dẫn được sử dụng, nhưng để bỏ qua vấn đề này, chúng tôi sử dụng mã sau đây mà chúng tôi đã lấy từ một bài đăng StackOverflow khác:
private void Somewhere() {
ServicePointManager.ServerCertificateValidationCallback += new RemoteCertificateValidationCallback(AlwaysGoodCertificate);
}
private static bool AlwaysGoodCertificate(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors policyErrors) {
return true;
}
Vấn đề là máy chủ không bao giờ xác nhận chứng chỉ và không thành công với lỗi trên. Có ai có bất cứ ý tưởng về những gì tôi nên làm?
Tôi nên đề cập rằng một đồng nghiệp và tôi đã thực hiện các bài kiểm tra vài tuần trước và nó đã hoạt động tốt với một cái gì đó tương tự như những gì tôi đã viết ở trên. "Sự khác biệt lớn" duy nhất chúng tôi tìm thấy là tôi đang sử dụng Windows 7 và anh ấy đang sử dụng Windows XP. Điều đó có thay đổi gì không?
The request was aborted: Could not create SSL/TLS secure channel
là một lỗi rất chung chung. Về cơ bản nó nói, "việc khởi tạo kết nối SSL / TLS / HTTPS không thành công vì một trong nhiều lý do có thể". Vì vậy, nếu bạn nhận được nó thường xuyên trong một tình huống cụ thể, lựa chọn tốt nhất của bạn là hỏi một câu hỏi cụ thể cung cấp chi tiết cụ thể về tình huống đó. Và kiểm tra Trình xem sự kiện để biết thêm thông tin. Và / hoặc kích hoạt một số gỡ lỗi phía máy khách .NET để có thêm thông tin chi tiết (chứng chỉ máy chủ không đáng tin cậy phải không? Có phiên bản giao thức không phù hợp? Mật mã SSL / TLS không khớp? V.v.).