【问题标题】:How to retrieve item from another localStorage Domain?如何从另一个本地存储域中检索项目?
【发布时间】:2020-02-18 16:30:58
【问题描述】:

我正在开发一个扮演搜索引擎角色的 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 添加到我的应用程序的代码:

&lt;iframe src='http://localhost:8040/test/index.php'&gt;&lt;/iframe&gt;

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

Developer Tools Result

谁能帮帮我?

【问题讨论】:

  • 放弃本地存储,尝试另一种方法

标签: javascript php local-storage


【解决方案1】:

所以 TL;DR,您是说希望 JavaScript 代码在来源为 http://localhost:8050 的页面上运行以访问来源 http://localhost:8040localStorage(反之亦然)?

你不能那样做。 Web storage 特定于来源,包括端口。

【讨论】:

  • 感谢@T.J.Crowder;还有其他方法可以检索该数据(wordToSearch)吗?
  • @B.Othman:不直接。您需要重新审视您的整体结构,并且可能让您的服务器端 Java 代码直接调用您的服务器端 PHP 代码(反之亦然)。
  • 不能只用 PHP 代码和服务器端 Java 代码之间的 POST 请求来完成吗?
  • @B.Othman:这就是我所说的 的意思......让你的服务器端 Java 代码直接调用你的服务器端 PHP 代码(反之亦然)......” .
【解决方案2】:

【讨论】:

    猜你喜欢
    • 2019-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-14
    • 2016-08-18
    • 1970-01-01
    相关资源
    最近更新 更多