Adobe Air javascript imap ssl-无法发出;列表“;命令-错误的未知命令
我正在用AdobeAIR编写一个从Gmail获取电子邮件的应用程序。我能够使用SSL连接并成功登录,但之后我无法进一步获取电子邮件。我认为这是因为SSL会话没有维护。每次我发出命令时,会话都会丢失 要获取电子邮件,我必须发送登录请求,然后发送Adobe Air javascript imap ssl-无法发出;列表“;命令-错误的未知命令,javascript,air,adobe,imap,Javascript,Air,Adobe,Imap,我正在用AdobeAIR编写一个从Gmail获取电子邮件的应用程序。我能够使用SSL连接并成功登录,但之后我无法进一步获取电子邮件。我认为这是因为SSL会话没有维护。每次我发出命令时,会话都会丢失 要获取电子邮件,我必须发送登录请求,然后发送LIST”“*”命令。但由于连接在登录后中断,当我发送LIST命令时,它作为一个新连接启动,并认为我尚未登录,并给出错误消息a001 BAD Unknown command gf9if3619638pbc.89 代码如下。有什么想法来实现这一点,或者这是可能
LIST”“*”
命令。但由于连接在登录后中断,当我发送LIST
命令时,它作为一个新连接启动,并认为我尚未登录,并给出错误消息a001 BAD Unknown command gf9if3619638pbc.89
代码如下。有什么想法来实现这一点,或者这是可能的
var socket;
function login() {
socket = new air.SecureSocket();
socket.connect('imap.gmail.com', 993);
socket.writeUTFBytes("\n"+"a001 LOGIN username password");
socket.addEventListener(air.ProgressEvent.SOCKET_DATA, socketDataHandler);
}
function fetchEmail() {
socket = new air.SecureSocket();
socket.connect(server, port);
socket.writeUTFBytes("\n"+'a001 LIST "" "*"');
}
这不是特定于SSL/TLS的。在这里,您要在登录时创建一个新连接,在获取电子邮件时创建另一个新连接。就服务器而言,这是两个完全不同的连接。删除
fetchEmail()
中的这些行应该是一个开始:
socket = new air.SecureSocket();
socket.connect(server, port);
此外,在继续执行下一个命令之前,您需要确保在
登录
命令(或实际上的任何其他命令)之后获得适当的响应代码。感谢您的响应!。是的,你是对的,我也尝试过,通过使用相同的套接字对象,但我没有得到任何响应。。我能够得到正确的响应代码单独登录,没有其他命令工作,我没有得到任何进一步的响应。这在不使用SSL的情况下可以正常工作,但在使用SSL的情况下不能正常工作。我在[link](testyourproject.com/sampl_ssl.html)上有代码。。第74行是其请求邮箱列表的位置。。任何想法都会很有帮助。。谢谢你!