Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Adobe Air javascript imap ssl-无法发出;列表“;命令-错误的未知命令_Javascript_Air_Adobe_Imap - Fatal编程技术网

Adobe Air javascript imap 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 代码如下。有什么想法来实现这一点,或者这是可能

我正在用AdobeAIR编写一个从Gmail获取电子邮件的应用程序。我能够使用SSL连接并成功登录,但之后我无法进一步获取电子邮件。我认为这是因为SSL会话没有维护。每次我发出命令时,会话都会丢失

要获取电子邮件,我必须发送登录请求,然后发送
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行是其请求邮箱列表的位置。。任何想法都会很有帮助。。谢谢你!