actionscript中的代理授权可以避免操作系统提示

时间:2011-08-12 12:56:24

标签: flex actionscript air proxy-authentication

我有一个空中应用程序,我希望每当我的客户端在代理后面时添加代理授权标头。我在urlRequest标头中添加了“proxy-Authoriztion”标头,但我仍然收到用户名/密码的操作系统提示。

var loader:HTMLLoader = new HTMLLoader();
var be:Base64Encoder = new Base64Encoder();
be.insertNewLines = false;
be.encode("test" + ":" + "test");    
var urlRequest:URLRequest = new URLRequest("http://google.co.in");
urlRequest.authenticate = false;
urlRequest.requestHeaders.push(new URLRequestHeader("Proxy-Authorization","Basic "+ be.toString())); 
page.htmlLoader.load(urlRequest);

我检查了小提琴手,我看到的是那个 第一个响应是301并添加了代理授权标头 第二个响应是407,并且未添加代理授权标头。

在此之后我得到OS提示符。 有人对此有什么想法吗?

1 个答案:

答案 0 :(得分:0)

我有同样的问题,仅针对授权标头。这是我的解决方案:

var service:HTTPService = new HTTPService();
...
var encoder:Base64Encoder = new Base64Encoder();
encoder.encode(userName+':'+password);
service.headers["Authorization"] = "Basic " + encoder.toString();
...
service.send();

对于某些明显的原因,这是有效的。试试这个(但记得在我的例子中用“代理授权”更改“授权”标题)