2012-07-10 2 views
2

Gmail 용 계정을 확인하려면 ColdFusion을 사용해야하므로 첨부 파일을 다운로드합니다. 나는 봤 거든 다음 코드를 제외하고 많이 발견하지 못했습니다. 저에게 무슨 결함이 있습니다. 그게 전부입니다.cfpop을 사용하여 Gmail에 액세스

이렇게가는 것이 가장 좋은 방법입니까?

다음은 코드입니다. 나는 링크를 포함 시켰지 만 다른 정보는별로 없다.

<cfscript> 
javaSystem = createObject("java", "java.lang.System"); 
jProps = javaSystem.getProperties(); 
jProps.setProperty("mail.pop3.socketFactory.class", "javax.net.ssl.SSLSocketFactory"); 
jProps.setproperty("mail.pop3.port", 995); 
jProps.setProperty("mail.pop3.socketFactory.port", 995); 
</cfscript> 

<cfpop action="getheaderonly" name="rsEmail" startrow="1? maxrows="50" server="pop.gmail.com" port="995" username="[email protected]" password="yourpassword"> 

Using CFPOP to check mail on GMail

+0

답변 해 주셔서 감사합니다. 나는이 접근 방식, 즉 POP 사용을 선택했습니다. 답변에서 오는 다른 접근 방식은 좋지만. POP를 사용하는 것은 간단하며 이메일에서 첨부 파일을받는 것 외에는 아무 것도 할 필요가 없습니다. –

답변

2

이것은 작동하지만 당신은 POP3에 대한 글로벌 SSL의의 SocketFactory를 설정하는 것을 알아야한다 :

또는 직접은 JavaMail API를 사용할 수 있습니다. 저는 이것이 서버 전체에 영향을 줄 것이라고 믿습니다. 이것은 당신의 프로세스와 관련이 없지만 주목할 가치가 있습니다.

+0

아, 문제 일 수 있습니다. 나는 POP3를 사용하는 서버에 다른 것들이 있다고 믿는다. 그 문제는 진단하기가 매우 어렵다고 생각합니다. –

+0

yep :) 현재 접근 방식은 java.lang.System을 사용하여 시스템 전체 속성을 설정하는 것입니다. 시스템 속성을 설정하지 않고 요청 당 소켓 팩토리를 구현하는 순수한 자바 구현을 사용할 수 있습니다. 그러나 샘플은 없습니다. 나는 먼저 barnyr 접근법을 시도 할 것입니다. Imap이 당신이 원하는 것을 제공하는지보십시오. –

+0

그래, 그게 더 좋은 접근 방법이야. 어쨌든 고마워요. –

3

당신이 특히 POP를 사용해야하는 이유가 있나요? CF9를 사용 중이라면 CFIMAP을 gmail과 함께 사용해야합니다. 문서는 gmail을 예로 사용하기도합니다.

<cfscript> 
props = CreateObject("java","java.util.Properties").init(); 
props.setProperty("mail.store.protocol", "imaps"); 

sessClass = CreateObject("java","javax.mail.Session"); 

sess = sessClass.getDefaultInstance(props); 

store = sess.getStore("imaps"); 
store.connect("imap.googlemail.com","[email protected]", "password"); 

folder = store.getFolder("inbox"); 

if(!folder.isOpen()){ 
      folder.open(folder.READ_WRITE) 
} 

messageCount = folder.getMessageCount(); 

dump(messageCount); 

if (!IsNull(folder) && folder.isOpen()) { folder.close(true); } 

if (!IsNull(store)) { store.close(); } 

</cfscript> 
+0

방금 ​​확인했습니다 (SERVER 변수를 덤프하여 확인할 수 있음을 잊어 버렸습니다). 우리는 현재 CF 8을 운영 중입니다. 업그레이드를위한 계획은 있지만 일정 시간은 아닙니다. 그래서 나는이 해결책을 위해 8시에 고생했다. –

+0

Java로 직접 가서 JavaMail IMAP 연결을 사용할 수 있는지 알아볼 수 있지만 Mark 메모로 전역 설정도 변경됩니다. 다음은 CF로 빨리 변환해야하는 간단한 예입니다. http://harikrishnan83.wordpress.com/2009/01/24/access-gmail-with-imap-using-java-mail-api/ – barnyr

+0

실제로 읽는 중입니다. 방금 게시 한 예제 링크는 전역 시스템 속성 개체를 사용하여 속성 개체를 가져 오는 편리한 방법입니다. 아마도 자신의 속성 객체를 인스턴스화하고 필요한 연결 세부 정보를 채울 수 있습니다. – barnyr

1

당신은 아마도 Riaforge에 오픈 소스 cfgmail 프로젝트를 사용할 수 있습니다

http://cfgmail.riaforge.org/

그것은 CF 7 위로 모두 작동합니다.

관련 문제