[英]How to display a file on an HTML page with javascript from POST data sent via a Flex URLRequest?
我正在尝试为我的Flex应用添加“文件预览”功能。 我在Flex中有一个LinkButton,当点击它时,应该在新的浏览器窗口中打开文件。 我找到了一个有用的actionscript类,它正确地格式化POST数据以将文件传递给HTML页面。 文件POST数据被放入URLRequest,URLRequest通过URLLoader发送到HTML页面。
我的问题是我对Javascript不是很熟悉,而且我不知道如何告诉HTML页面显示Flex应用程序发送的文件。 经过无数的网络搜索,我决定在这里问。 我不是要求任何人为我编写代码,我只需要一个好的起点(一个关键字,一个javascript函数来阅读,一些东西)。
我想使用HTML和Javascript的组合来获取POST数据并在浏览器中打开包含的文件。
其他重要信息:文件需要在IE8中显示,显示的文件主要是图像文件,PDF或Word文档。
编辑:这是我忘了提到的一些信息。 我想要显示的文件存储在数据库中。 我从那里抓取文件并将其作为ByteArray存储在自定义类中。 然后我将ByteArray传递给我的助手类,该类格式化POST数据请求并将结果存储在URLRequest.data中。
这是我的请求的样子:
--lljcuqjclcnyicgrmwexayhafmkhiwfx
Content-Disposition: form-data; name="Filename"
arrows.png
--lljcuqjclcnyicgrmwexayhafmkhiwfx
Content-Disposition: form-data; name="Filedata"; filename="arrows.png"
Content-Type: image/png
?PNG
"image information as ByteArray"
--lljcuqjclcnyicgrmwexayhafmkhiwfx
Content-Disposition: form-data; name="Upload"
Submit Query
--lljcuqjclcnyicgrmwexayhafmkhiwfx--
所以我正在寻找一种方法(理想地使用Javascript和HTML)来处理该请求并让浏览器显示文件(或者如果用户没有要显示的正确插件,则显示打开/保存对话框)。
第一个简单的案例想要显示图像或pdf(需要插件)
navigateToUrl(new URLRequest("http://localhost/images/hello.png"));
如果您想要将数据传递到html页面,则需要考虑以下代码
var req:URLRequest = new URLRequest("http://www.localhost/openfile.html");
req.data = "path='http://localhost/images/hello.png'";
req.method = URLRequestMethod.GET;
navigateToURL(req);
之后你需要通过Javascript从javascript GET参数值获取路径值然后你可以解析GET参数然后你可以玩DOM元素。
我以为我们不能单独从JavaScript获取POST值,我们需要使用服务器脚本。 post-variables-with-jquery 。
MS Word在浏览器中打开它将有助于查看/打开Word文档 。 我不确定Word Docs。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.