我正在开发一个JAVA web应用程序,它扮演着搜索引擎的角色。其后台采用AngularJS开发。我有一小段PHP代码,它试图通过iframe将输入文本中的数据发送到JAVA web应用程序。数据存储在localStorage中。
下面是PHP代码:
index.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Search</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<script type="text/javascript">
function redirect(){
var toSearch = document.getElementById('wordToSearch').innerHTML;
console.log("toSearch : ", toSearch);
localStorage.setItem('wordToSearch', 'bdd');
window.location.href = "http://localhost:8050/searchEngine/#/search";
}
</script>
<form action="http://localhost:8050/searchEngine/#/search">
<input type="text" name="word" id="wordToSearch">
<input type="submit" value="Search" onclick="redirect()">
</form>
</body>
</html>
准确地说,我正在尝试检索存储在localStorage中的"wordToSearch“项值
下面是我将iFrame添加到应用程序中的代码:
<iframe src='http://localhost:8040/test/index.php'></iframe>
这是我在开发人员工具中得到的结果:
有谁能帮帮我吗?
发布于 2017-12-12 20:08:47
那么TL;DR,你是说你想让JavaScript代码运行在一个以http://localhost:8050
为源的页面上,以访问源http://localhost:8040
的localStorage
(反之亦然)?
你不能这么做。Web storage特定于源,其中包括端口。
发布于 2020-02-18 16:18:53
您可以使用cookie完成此操作,将value设置为http://localhost:8050并从http://localhost:8040获取value。访问https://developer.mozilla.org/en-US/docs/Web/API/Document/cookie
https://stackoverflow.com/questions/47772217
复制相似问题