Adobe套接字对象无法使用代理

时间:2013-02-14 21:41:38

标签: javascript adobe-indesign extendscript

尝试启动和运行Adobe Socket对象。我有这段代码:

var reply = "";
var conn = new Socket;

// access Adobe’s home page
if (conn.open("www.adobe.com:80")) 
{
    // send a HTTP GET request
    conn.write ("GET /index.html HTTP/1.0\n\n");
    // and read the server’s reply
    reply = conn.read(999999);
    conn.close();

    alert(reply.toString());
}
else 
{ 
    alert(conn.error);
}

它不起作用。 conn.error已被解雇,因此我知道问题出在conn.open上。这是我收到的错误消息:

Cannot connect to www.adobe.com:80

也尝试过其他一些网站;没有用。但是,如果我将www.adobe.com:80切换为localhost:8080,一切都会按预期工作。

修改

我确实将其缩小为代理问题。但我不知道该怎么做,如果我必须修复我的脚本,或者我必须与IT人员讨论允许代理连接。

我在这里使用我的代码:

if (conn.open("proxyserver.com:port")) 
{
    conn.write ("CONNECT www.adobe.com:443 HTTP/1.0\n\n");
    reply = conn.read(999999);
    alert(reply.toString());
}

这让我得到以下信息:

HTTP/1.0 200 Connection Established

但我除此之外无法做任何事情。我只能做端口443(https,我认为); 80端口不能在任何站点上运行。我认为这更像是代理问题,而不是脚本问题。但是,当我使用端口443并获得连接时,我不知道如何使用该连接执行任何操作。之后我尝试发送GET请求并返回空白。

1 个答案:

答案 0 :(得分:0)

确保您的防火墙没有阻止访问您的代理服务器 - 也可能需要打开特定端口。

或者,也许代理未设置为使用端口80?如果使用端口443,则不是SSL;你需要证书吗?看起来您的代理只接受SSL连接。

也许尝试使用ipaddress而不是域名:192.150.14.12:80是adobe pdf提供的。