2017-12-05 21 views
0

유닉스의 sendmail 라이브러리를 사용하여 메일을 보내고 있습니다. 첨부 파일이있는 메일을 (Microsoft Word) .docx 파일로 보냅니다. 이 단어 파일에는 이미지가 있습니다. 문제는 수신자가 내부에 이미지가있는 단어 (.docx 파일) 인 메일 첨부 파일을 열 수 없다는 것입니다. Microsoft 단어 파일을 열면 "파일이 손상되었습니다."라는 오류 메시지가 나타납니다.Microsoft Word 파일에 이미지가있을 때 파일이 손상되어 유닉스의 sendmail 라이브러리를 통해 보냅니다.

수신자는 텍스트 파일 만 있으면 단어 파일을 열 수 있습니다. 문제는 단어 파일에 이미지가 있고 단어 파일이 메일의 첨부 파일로 전송되는 경우에만 발생합니다.

다음은 파일 내용입니다. 이 첨부 된 워드 파일을 마이크로 소프트 워드에서 열립니다

echo -e MIME-Version: 1.0; 
echo -e 'Content-Type: multipart/mixed; boundary="CONTENT_BOUNDARY"'; 
echo ; 
echo -e --CONTENT_BOUNDARY; 
echo -e 'Content-Type: text/html; charset=utf-8'; 
echo ; 
echo -e " "; 
echo ; 
echo -e --CONTENT_BOUNDARY; 
echo -e 'Content-Type: text/plain; charset=utf-8'; 
echo ; 
echo -e "Hello World!"; 
echo ; 
echo -e --CONTENT_BOUNDARY; 
echo -e 'Content-Type: text/html; charset=utf-8'; 
echo ; 
echo -e "<b>Hello</b> <i>World</i>!"; 
echo ; 
echo -e --CONTENT_BOUNDARY; 
echo -e 'Content-Type: application/vnd.openxmlformats-officedocument.wordprocessingml.document; name=Editor-issue-6-30-2016.docx'; 
echo -e 'Content-Transfer-Encoding: base64'; 
echo ; 
echo -e PK 

, 이것은이 이미지와 같은 모습입니다 .. 쉬 파일이며, 메일 발송이 쉬 파일을 실행하는 리눅스의 센드 메일 API를 사용 (

This is how the image looks like doc file is opened in word

내가 Node.js를에 nodemailer 같은 API를 보내는 다른 메일을 사용하여 동일한 첨부 파일을 보내려고가이 첨부 파일이 제대로 수신기에 의해 열리지) 원래 이미지와 동일하지 않습니다.

도움이 되었습니까?

감사합니다. 이에서

답변

0

: Using sendmail for HTML body and binary attachment

시도가

'Content-Transfer-Encoding: uuencode'; 

'Content-Transfer-Encoding: base64'; 

을 변경하고

uuencode 'Editor-issue-6-30-2016.docx' $(basename 'Editor-issue-6-30-2016.docx') 
+0

없음 작동하지 않았다 추가 없습니다. 문제의 이미지 스크린 샷을 추가했습니다. 단어로 메일 첨부 파일을 열면 이미지가 제대로 표시되지 않습니다. –