对于知道答案的人来说很容易。我的代码通过跨文档消息传递成功地从网站下载了 pdf。但是,我现在想在浏览器中显示 pdf,可能在 iframe 或数据对象中。可能我需要知道下载后存储 pdf 的本地 url。请帮忙,可能很容易点。请参阅此处的小提琴以获取我的代码。
重要提示:因为我想下载文件,所以我不想简单地制作 client.src="http://ops.epo.org/3.0/rest-services/published-data/images/US/7123345/B2/thumbnail .pdf?范围=1"
HTML 代码:
<input type="button" onclick="runit()" value="runit"></input>
<iframe width=100 height=100 id="client" src="http://ops.epo.org/3.0/xss/crosssitescript.html" />
Javascript代码:
function runit() {
// Get the iframe window object
var client = document.getElementById('client');
// Create the data string to be passed to the OPS JavaScript
var data = "{'url' : 'http://ops.epo.org/3.0/rest-services/published-data/images/US/7123345/B2/thumbnail.pdf?Range=1', " + "'method' : 'GET', " + "'requestHeaders' : {'Accept': 'application/pdf' } " + "}";
// Use the postMessage() method in order to send the data to the
// iframe object
client.contentWindow.postMessage(data, 'http://ops.epo.org');
}
// Add event listener for your window
window.addEventListener("message", receiveMessage, false);
// Method handling window events
function receiveMessage(event) {
// Check origin of the event!
if (event.origin == "http://ops.epo.org") {
alert("How do I display the event.data as a pdf on the page?");
} else {
alert("Got message from unknown source.");
}
}