Trong ứng dụng của tôi, tôi sử dụng RestSharp để truy vấn REST API và System.Net.Mail để gửi email. Khi khởi động chương trình, tôi đặt thuộc tính ServicePointManager.SecurityProtocol.ServicePointManager SecurityProtocol xung đột
Nếu tôi đặt các tài sản để:
ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3 | SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11;
ngoại lệ được ném khi truy vấn API với RestSharp:
The request was aborted: Could not create SSL/TLS secure channel
Nếu tôi đặt các tài sản để:
ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3 | SecurityProtocolType.Tls11;
ngoại lệ là được gửi khi gửi email với System.Net.Mail:
System.Security.Authentication.AuthenticationException: A call to SSPI failed, see inner exception. ---> System.ComponentModel.Win32Exception: The client and server cannot communicate, because they do not possess a common algorithm
Tôi nên giải quyết vấn đề này như thế nào?
Phiên bản .NET nào? Nếu bạn không phải là mới nhất, có thể nâng cấp không? Sau đó tôi sẽ bắt đầu bằng cách cố gắng thu hẹp nó xuống một chút. Sử dụng trình bổ sung chrome addin Postman để thử và liên lạc với API của bạn. Thiết lập Fiddler (hoặc Wireshark) để chặn lưu lượng truy cập và xem các gói để xem những gì nó đang cố gắng thương lượng. Bạn cũng chỉ sử dụng lớp SmtpClient tiêu chuẩn? mã của bạn trông như thế nào khi sử dụng? – Wjdavis5
Bạn có thể đặt giá trị chính xác cho người quản lý điểm dịch vụ ngay trước khi thực hiện cuộc gọi. –