【发布时间】:2012-06-13 14:22:21
【问题描述】:
我有一个 Adobe Flex Web 应用程序,我们正在将其转换为 Adobe AIR 应用程序。在服务器端,我有一个只接受 HTTP POST 请求的 servlet。我们使用navigateToUrl() 打开带有该 POST 请求结果的网页。在 Web 应用程序中,这可以完美运行(使用请求结果打开一个新选项卡),但它在 Adobe AIR 客户端中无法使用,使用完全相同的代码。 HTTP POST 被转换为 servlet 不接受的 HTTP GET。网络浏览器显示:
HTTP Status 405 - Request method 'GET' not supported.
这是提出请求的方式:
var request:URLRequest = new URLRequest();
request.method = URLRequestMethod.POST;
request.url = presentationModel.exportURL;
(exportURL 变量是一个类似于http://ipaddress:8080/myapp/export/eventhistory1339595975131.html 的字符串)
我检查了this forum post,但那里给出的解决方案(用字符串本身替换指向字符串的const)没有意义,并且在我尝试时没有工作。
我也看了this question,但那里没有真正的答案。评论表明用户在他的 URL 中添加了一个斜杠以使其工作,但在我的情况下这不起作用,因为 url 的形式是:
http://ipaddress:8080/myapp/export/eventhistory1339595975131.html
我正在使用 Adobe Air 3.3 和 Flex SDK 4.5
【问题讨论】:
-
当你说它不起作用时;你能详细说明吗?什么不起作用?你有错误吗?你有意外的行为吗?
-
究竟是什么不工作?您收到任何错误消息吗?
-
@www.Flextras.com 我猜我们同时按了 Enter ;)
-
我已将问题更新为更清晰。问题是 AIR 将 POST 变成了 GET。
标签: apache-flex post air