2017-05-08 14 views
0
var notifier = require('mail-notifier'); 
    var imap = { 
      username: "siddharthsogani1", 
      password: "MYGMAILPASSWORD", 
      host: "imap.gmail.com", 
      port: 993, // imap port 
      secure: true // use secure connection 
    }; 

notifier(imap).on('mail',function(mail){console.log(mail);}).start(); 

내 Gmail받은 편지함에서 새 메일 이벤트를 수신하려고합니다. 위의 코드 스니 피트 에서처럼 노드 mail-notifier2 모듈을 사용하고 있습니다. 그러나 인증 할 수 없습니다.노드 mail-notifier2 모듈을 사용하여 새 메일 이벤트를 청취 할 때 imap 자격 증명이 작동하지 않음

위의 코드를 사용할 때 오류가 발생합니다 : - 'uncaughtException : 서버로 인증하는 동안 시간 초과되었습니다.'그리고 imap 개체에서 tls : true를 전달할 때 catch되지 않는 예외가 발생합니다. 'uncaughtException : 인증서의 자체 서명 된 인증서 체인'. 제가 잘못되어있는 곳을 알려주고 제가이 일을하기 위해 무엇을해야합니까?

+0

NodeJS를 사용하고 있으므로 [Gmail 용 NodeJS 빠른 시작] (https://developers.google.com/gmail/api/quickstart/)을 사용해보십시오. nodejs) OAuth 플로우를 따르십시오. 오류에 관해서는 [github forum] (https://github.com/request/request/issues/2061)에서 제안 된 대체 방법은 무엇입니까? a)로드 밸런서에서 SSL 종료 b) 무료 인증서 사용 . – noogui

+0

@noogui 감사합니다. github 포럼 도움 :) –

답변

0

이 문제는이 포럼에서 해결되었습니다 : https://github.com/request/request/issues/2061

으로는 트릭 process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0" 을 설정하는 것입니다 대답; 가짜 SSL 인증을 사용하여 클라이언트 및 서버 통신을 검사 할 수 있습니다.