3

我在 Mac OS X Yosemite 10.10 上使用 Mamp 3 (pro);我已经编译并安装了 mod_proxy_html (3.1.2) 和 mod_xml2enc,它们都被 Apache 2.2.29 正确加载,没有问题。

这是我的典型 html 文件:

<!DOCTYPE HTML>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <meta http-equiv="Authorization" content="Bearer dummyToken">
    <title>Header Test</title>
</head>
<body>

</body>

我需要将所有这些都转换<meta http-equiv="some" content="thing">为真正的 http 标头。我已经知道如何通过 ajax 做到这一点,这不是问题。但是我需要在Authorization 标头字段中添加一个 oauth 令牌,以访问各种受保护的资源,例如图像或视频流,这些资源不是通过 ajax 提供的,而是通过 url 直接在 html 中引用的。

所以,直接在我的 httpd.conf 中,我有:

ProxyHTMLEnable On
ProxyHTMLMeta On

此配置应全局适用于 apache。目前,我的服务器回复了请求中包含的所有字段:似乎忽略了 ProxyHTMLMeta On并且所有元标记都没有转换为 http 标头:

Accept: "*/*"
Accept-Encoding: "identity;q=1, *;q=0"
Accept-Language: "it,en;q=0.8"
Connection: "keep-alive"
Cookie: "laravel_session=dummy
DNT: "1"
Host: "192.168.2.2:8888"
Range: "bytes=0-"
User-Agent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2535.0 Safari/537.36"

看,没有授权标头。如果我从 SoapUI 调用 api:

"Accept-Encoding": "gzip,deflate",
"Authorization": "Bearer dummy",
"Host": "fillusso:8888",
"Connection": "Keep-Alive",
"User-Agent": "Apache-HttpClient/4.1.1 (java 1.5)"

这是一种魔法,header 就在那里(因为它是直接从 SoapUI 发送的,这里没有解析或元标记)。

我该如何解决这个问题?我做的一切都好吗?

4

0 回答 0