2

试图让 Adob​​e 的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. 这是我收到的错误消息:

无法连接到 www.adobe.com:80

也尝试了许多其他网站;没有任何效果。但是,如果我切换www.adobe.com:80localhost: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 连接已建立

但除此之外,我无能为力。我只能做443端口(我认为是https);端口 80 不适用于任何站点。我认为这更像是一个代理问题而不是脚本问题。但是,当我使用端口 443 并获得连接时,我不知道如何处理该连接。之后我尝试发送一个 GET 请求,它返回空白。

4

1 回答 1

0

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

或者,也许代理没有设置为使用端口 80?如果使用443端口,那不就是SSL吗?你需要证书吗?您的代理似乎只接受 SSL 连接。

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

于 2013-02-15T16:48:11.430 回答