【问题标题】:How to send custom HTTP headers with Flex when using Google Chrome使用 Google Chrome 时如何使用 Flex 发送自定义 HTTP 标头
【发布时间】:2009-03-23 23:54:08
【问题描述】:

我正在使用 UrlRequest 向服务器发送数据。我通过以下方式通过自定义 HTTP 标头发送各种参数:

urlRequest.requestHeaders.push(new URLRequestHeader("someheader", "somevalue"));

当请求到达我的 ASP.NET 端点(实现 IHttpHandler 的类)时,如果运行我的 Flex 应用程序的 Web 浏览器是 Google Chrome,则 HttpRequest Headers 属性不包含任何值。这适用于 IE6、IE7 和 Firefox。当我使用 Fiddler 查看流量时,如果浏览器是 Chrome,则自定义标头不存在。我在服务器上的 crossdomain.xml 是完全开放的以允许所有标头:

<allow-http-request-headers-from domain="*" headers="*"/>

我知道通常通过将 UrlRequest 的数据属性设置为 UrlVariables 字典来发送参数,但在这种情况下我已经使用数据字段来发送 XML 流。

【问题讨论】:

    标签: asp.net apache-flex google-chrome http-headers fiddler


    【解决方案1】:

    浏览器限制了 Flash 应用在发出 HTTP 请求时可以发送的标头。不同的浏览器有不同的限制,但都有限制。

    我最终在我的服务器上创建了一个代理,这样我就可以发送与各种第三方服务器通信所需的所有标头。

    -布莱恩

    【讨论】:

      【解决方案2】:

      但我已经在使用数据字段 在这种情况下发送一个 XML 流

      定义您的 xml 模型以包含这些标头。从您的问题看来,您觉得您受到数据属性的限制。

      <xmlObjects>
          <headers>
              <header name="header1" value="foo" />
              <header name="header1" value="foo" />
          </headers>
          <data>
              <ip>102.201.102.1</ip>
              <name>Andrew Rea</name>
          </data>
      </xmlObjects>
      

      因此,如果我需要发送任何数据,我依赖于传输数据的模型设计。

      安德鲁

      【讨论】:

        【解决方案3】:

        如何在 flex 中发送自定义 http 标头

        http://yasob.blogspot.com/2009/05/accessing-http-request-parameter-in.html

        【讨论】:

        • 您的网址中有无效空格
        猜你喜欢
        • 1970-01-01
        • 2018-06-04
        • 2014-03-08
        • 2012-11-26
        • 1970-01-01
        • 2018-10-03
        • 1970-01-01
        • 1970-01-01
        • 2012-01-31
        相关资源
        最近更新 更多