Używam zapytań Pythona, aby opublikować żądanie. Gdy parametr attachment ma kilka znaków spoza ASCII, zgłaszany jest wyjątek, przy innych okazjach, w których istnieją tylko dane ASCII, wszystko jest w porządku.python żąda problemów z nazwami plików non ascii
you can see the exception here
response = requests.post(url="https://api.mailgun.net/v2/%s/messages" % utils.config.mailDomain,
auth=("api", utils.config.mailApiKey),
data={
"from" : me,
"to" : recepients,
"subject" : subject,
"html" if html else "text" : message
},
files= [('attachment', codecs.open(f.decode('utf8'))) for f in attachments] if attachments and len(attachments) else []
)
redaguje: Po dekodowaniu nazwę pliku z utf8, nie rozumiem jednak wyjątek plik nie jest podłączony. I debugowany żądań załączeniem pliku ze znaków ASCII tylko w swoim imieniu, a żądanie nagłówki żądania zbudować to:
{'Content-Type': None, 'Content-Location': None, 'Content-Disposition': u'form-data; name="attachment"; filename="Hello.docx"'}
powiedzie to, dostaję pocztę z załącznikami.
Jednak, gdy za pomocą pliku z hebrajskimi literami, nagłówek wniosek jest:
{'Content-Type': None, 'Content-Location': None, 'Content-Disposition': 'form-data; name="attachment"; filename*=utf-8\'\'%D7%91%D7%93%D7%99%D7%A7%D7%94.doc'}
dostaję pocztę ale bez pliku dołączonym do niego. Jakieś pomysły?
Pokaż nam śledzenie błędów. Dostarczone zdjęcie pokazuje, że są pewne próby utworzenia nagłówka z nieoczekiwanymi znakami. Ale może to być przypadek dla wielu wartości, które masz w swoim kodzie, a stacktrace powie nam więcej. Idealnie powinieneś podać krótki fragment kodu, który uruchamia się i pokazuje problem. Obecnie nie można wiele powielić. –