如何从另一个localStorage域中检索项目?

时间:2017-12-12 12:04:29

标签: javascript php local-storage

我正在开发一个扮演搜索引擎角色的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>
&#13;
&#13;
&#13;

准确地说,我试图检索&#34; wordToSearch&#34;存储在localStorage中的项值

下面是我将iFrame添加到我的应用程序的代码:

&#13;
&#13;
<iframe src='http://localhost:8040/test/index.php'></iframe>
&#13;
&#13;
&#13;

这是我在开发人员工具中得到的结果:

Developer Tools Result

有人能帮帮我吗?

2 个答案:

答案 0 :(得分:2)

所以TL; DR,你说你想要在原点为http://localhost:8050的页面上运行JavaScript代码来访问原始localStorage的{​​{1}}(反之亦然)?

你做不到。 Web storage特定于原点,包括端口。

答案 1 :(得分:0)

您可以使用Cookie进行操作,将值设置为http://localhost:8050,并从http://localhost:8040获取值。访问https://developer.mozilla.org/en-US/docs/Web/API/Document/cookie