-1

我想在我的网站上以 iframe显示.doc和文件。.docx

<iframe style="border-style: none;" src="http://docs.google.com/viewer?embedded=true&url=<s:url action="loadFile"><s:param name="id" value="id"/></s:url>" height="500" width="100%">

loadFile 操作发送流类型的结果

<action name="loadFile" class="com.view.file" method="loadFile">
                <result name="success" type="stream">
                    <param name="contentType">${fileType}</param>
                    <param name="inputName">inputStream</param>
                    <param name="contentDisposition">inline;filename="${fileName}"</param>
                    <param name="bufferSize">1024</param>
                </result>
</action>

当我直接在 src 属性中设置操作 url 时,iframe 起作用。但是,src="http://docs.google.com/viewer?embedded=true&url=永远不会调用该操作。还有其他方法可以显示 MS Word 文件吗?我可以通过将操作 url 直接放在 src 属性中来显示 pdf。

谢谢

编辑

问题可能是因为 iframe 的 src 转换为:

src="http://docs.google.com/viewer?embedded=true&url=/App/loadFile?id=25"

所需的 url 应该是动作的绝对 url,例如:

src="http://docs.google.com/viewer?embedded=true&url=http://localhost/App/loadFile?id=25"

我怎样才能做到这一点?它可能不适用于本地主机,但应该适用于主机

4

1 回答 1

0

使用tag的属性获取完整的forceAddSchemeHostAndPorturls:url

更多信息

例如

<s:url action='myaction' forceAddSchemeHostAndPort='true'>
<s:param name='id' value='25'/>
</s:url>
于 2013-10-02T21:32:51.887 回答