【问题标题】:flex HTTP Basic authentication problemflex HTTP基本认证问题
【发布时间】:2010-09-29 14:35:55
【问题描述】:

我正在尝试获取需要 HTTP 基本身份验证的 xml 文件:

private function authAndSend(service:HTTPService):void
            {
                var enc:Base64Encoder = new Base64Encoder();

                enc.insertNewLines=false;

                enc.encode("login:pass");

                service.headers["Authorization"] = "Basic " + enc.toString();

                service.headers["Accept"] = "application/xml";              

                service.contentType="application/x-www-form-urlencoded";
                service.method = HTTPRequestMessage.GET_METHOD;

                service.resultFormat = "xml";

                service.send();


            }

在 AIR 中效果很好。但在 Flex(3.5,4.1) 中,它会引发 pupup 登录窗口(基本 http 身份验证的标准 Web 浏览器登录表单)。如何避免这种情况?

【问题讨论】:

    标签: apache-flex flex3 air http-headers flex4


    【解决方案1】:

    默认情况下,Flash Player 会阻止 HTTP 标头(包括授权)发送。您需要在 crossdomain.xml 文件中明确允许 Authorization 标头。

    http://www.adobe.com/devnet/flashplayer/articles/flash_player9_security_update.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-07-27
      • 2012-01-06
      • 1970-01-01
      • 2011-01-25
      • 2012-01-02
      • 2011-05-06
      • 1970-01-01
      • 2011-05-03
      相关资源
      最近更新 更多