Tôi có một máy chủ ổ cắm được cho là nhận các ký tự hợp lệ UTF-8 từ các máy khách.
Vấn đề là một số khách hàng (chủ yếu là tin tặc) đang gửi tất cả các loại dữ liệu sai về nó.
Tôi có thể dễ dàng phân biệt máy khách chính hãng, nhưng tôi đang đăng nhập vào tệp tất cả dữ liệu được gửi để tôi có thể phân tích sau.
Đôi khi tôi nhận được các ký tự như thế này œ
gây ra UnicodeDecodeError
lỗi.
Tôi cần có khả năng tạo chuỗi UTF-8 có hoặc không có các ký tự đó.
Cập nhật:
Đối với trường hợp cụ thể của tôi, dịch vụ ổ cắm là một MTA và do đó tôi chỉ mong nhận được các lệnh ASCII như:
EHLO example.com
MAIL FROM: <john.doe@example.com>
...
Tôi đã đăng nhập tất cả những thứ này trong JSON.
Sau đó, một số người không có ý định tốt đã quyết định bán tất cả các loại rác.
Đó là lý do tại sao đối với trường hợp cụ thể của tôi, việc loại bỏ các ký tự không phải ASCII là hoàn toàn ổn.