真的很简单:
var req:URLRequest=new URLRequest();
req.url="http://somesite.com";
var header:URLRequestHeader=new URLRequestHeader("my-bespoke-header","1");
req.requestHeaders.push(header);
req.method=URLRequestMethod.GET;
stream.load(req);
但是,如果我使用 WireShark 检查流量,my-bespoke-header
则不会发送。如果我更改为URLRequestMethod.POST
并将一些数据附加到req.data
,则发送标头,但接收应用程序需要 GET 而不是 POST。
该文档提到了一个不会发送的标头黑名单。my-bespoke-header
不是其中之一。可能值得一提的是,原始请求来自同一域上的不同端口。策略文件日志中没有报告任何内容,因此似乎不太可能,但是allow-http-request-headers-from
尽管这不是跨域问题,但可以通过强制加载带有 a 的 crossdomain.xml 来解决这个问题吗?或者它只是 Flash Player 的一个未记录的功能,它只能通过 POST 请求发送自定义标头?