클라이언트에서 UTF-8 유효한 문자를 수신 해야하는 소켓 서버가 있습니다.
문제는 일부 클라이언트 (주로 해커)가 잘못된 모든 종류의 데이터를 전송한다는 것입니다.
나는 진짜 클라이언트를 쉽게 구별 할 수 있지만, 나중에 분석 할 수 있도록 전송 된 모든 데이터를 파일에 기록하고있다.
때로는 오류 œ
를 일으키는 이와 같은 문자 가 UnicodeDecodeError
표시됩니다.
해당 문자 유무에 관계없이 문자열 UTF-8을 만들 수 있어야합니다.
최신 정보:
내 특별한 경우 소켓 서비스는 MTA 였으므로 다음과 같은 ASCII 명령 만 수신해야합니다.
EHLO example.com
MAIL FROM: <john.doe@example.com>
...
JSON 으로이 모든 것을 기록하고있었습니다.
그런 다음 좋은 의도가없는 일부 사람들은 모든 종류의 쓰레기를 팔기로 결정했습니다.
그렇기 때문에 특정 경우에는 ASCII가 아닌 문자를 제거하는 것이 좋습니다.