0
EmailMultiAlternatives를 통해 전자 메일을 만들고 싶지만 POST 데이터에서 base64로 이미지 데이터를 가지고 있습니다. 이메일로 첨부 파일로 보내고 싶습니다. 지금은첨부 파일로 base64 이미지 데이터를 추가하는 방법은 무엇입니까?
I가 (보기) :
ctx = { 'username': request.user.username, 'img': request.POST['image'] }
subject, from_email, to = 'Hello', '[email protected]', '[email protected]'
text_content = 'text only'
html_content = render_to_string('visemail.html', ctx)
msg = EmailMultiAlternatives(subject, text_content, from_email, [to])
msg.attach_alternative(html_content, "text/html")
msg.send()
템플릿 : 나는 내용의 사진을 볼 수 없습니다
<img src="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKCgkICQkKDA8MCgsOCwkJDRENDg8QEBEQCgwSExIQEw8QEBD/2wBDAQMDAwQDBAgEBAgQCwkLEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB....
: 나는 텍스트와 이메일을
<img src="{{ img }}" />
그러나 . 그래서이 이미지를 첨부 파일로 보내고 싶습니다.
어떻게 하시겠습니까?
img_data = request.POST['image']
img = MIMEImage(img_data[img_data.find(",")+1:].decode('base64'), 'jpeg')
img.add_header('Content-Id', '<file>')
img.add_header("Content-Disposition", "inline", filename="file.jpg")
msg.attach(img)
을하고 나를 위해 작동합니다