2017-09-15 1 views
1
추가 기능은 다음과 같은 오류 반환을 Outlook에서 전자 메일 메시지에 첨부 파일을 추가하려고

에 첨부 파일을 추가 :Outlook에서 추가 기능 수없는 메시지

status: failed 
code:9007  
message:"The attachment cannot be added to the item."  
name:"AttachmentUploadGeneralFailure" 

이 어떤에서 웹에서 Outlook을 사용하는 일을 브라우저. Outlook 2013/2016 데스크톱 클라이언트에서 첨부 파일이 성공적으로 추가되었습니다.

파일은 HTTPS와 유효한 인증서 (자체 서명되지 않음)를 사용하여 추가 기능이 실행되는 동일한 도메인에서 호스팅됩니다. HTTPS 대신 HTTP를 사용할 때 작동하지 않습니다. 브라우저에 URL을 입력하여 파일을 다운로드 할 수 있습니다. 첨부 파일을 다운로드하기 위해 서버에 "GET"요청이 수행되지 않습니다.

내 웹 서버에만 문제가있는 것 같습니다. 인터넷에서 임의의 파일을 첨부하려고하면 정상적으로 작동합니다.

업데이트 : 파일은 인증 된 추가 기능 사용자 만 액세스 할 수 있습니다. 공개적으로 액세스 할 수 없습니다. 아마도 그것이 작동하지 않는 이유 일 것입니다. 이 문제를 해결할 수있는 방법이 있습니까?

mailbox.item.addFileAttachmentAsync(
    attachmentUrl, 
    fileName, 
    function (result) { 
     if (result.status === Office.AsyncResultStatus.Failed) { 
      console.log(result.error.message); 
     } 
    }); 

답변

1

문제는 파일에 인증이 필요하다는 것입니다.

바탕 화면의 Outlook에서는 attachmentUrl이 Outlook 클라이언트로 보내져 다운로드 및 연결됩니다. 이 모든 것이 동일한 컨텍스트 내에서 일어나기 때문에 인증은 파일 서버로 전달됩니다.

그러나 OWA와

attachmentUrl은 다운로드 서버로 전송됩니다. 서버가 인증되지 않았으므로 파일에 액세스 할 수 없으므로 파일을 다운로드하여 메시지에 첨부 할 수 없습니다.

잠정적 인 임시 해결책은 공개적으로 액세스 할 수 있지만 잠시 동안 만 존재하는 임시 URI를 제공하는 것입니다. 이것은 Microsoft Graph API가 OneDrive에서 파일을 다운로드하는 방식입니다. 한 번만 사용할 수있는 URI를 생성하고 몇 분 후에 자멸합니다.

또 다른 옵션은 Azure Blog Storage과 같은 중개자를 사용하여 파일을 호스팅하고 shared access signatures을 사용하여 파일에 대한 보안을 유지하는 것입니다. 파일의 수와 크기에 따라 저렴한 비용으로 GB 당 종류의 페니와 같이 자신의 솔루션을 구르는 것을 피하기 위해 매우 저렴할 수 있습니다.

+0

감사합니다. 그것이 내가 의심하는 것입니다. 이 문제를 해결하기 위해 귀하의 제안을 살펴 보겠습니다. –

관련 문제