javascript - 是否可以将 javascript 中的文本缩短为 php get 请求?

标签 javascript php text encode

我有一个非常特殊的情况,其中一个 javascript 页面创建一个带有元刷新的新窗口,该窗口转到一个 php 页面,该页面有 1 个变量,其中包含 javascript 页面放入的所有内容。像这样:

form.write('<meta http-equiv="refresh" content="0;URL=contentreq/index.php?data=');
Very long text with a lot of data (over 3000 characters)
form.write('" />');

php页面是这样获取的:

$data=$_GET['data'];
$order=htmlentities(stripslashes(strip_tags($order)));

问题是一个现有的应用程序有这个问题,我无法正确解决它,所以我想知道是否有某种方法可以加密/编码数据变量,以便它会更短。 (我的 apache 服务器不喜欢 82512 个字符的长 url...)就像 tinyurl 一样,但 PHP 必须能够将其解码回来。我不知道它的正确术语,所以我的谷歌搜索没有给我很多结果。

最佳答案

正确的术语是压缩,但在这种情况下它也不起作用 - 一般 URL 长度限制为 2000 个字符,因为 IE 将其设置得那么低,并且如果您的数据是难以压缩,您无法将 3kb 可靠地装入 2kb。

如果不能在 PHP session 中存储数据,唯一想到的就是使用 Ajax POST 请求“提前发送数据”。这可以携带超过 3 kb。发送请求后,重定向到下一个页面,并让 PHP 从 session 或其他内容中获取传输的数据。

它不是很漂亮,但对于这个非常具体的场景,这是我想到的唯一想法。

另一个想法是将数据存储在浏览器端 local storage.,虽然这纯粹是客户端,因此您不能传递 URL。

引用:

关于javascript - 是否可以将 javascript 中的文本缩短为 php get 请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4072673/

相关文章:

javascript - 使用 JS 和 CSS 使 header 仅适用于蜂窝媒体

javascript - 如何构建 JavaScript 回调队列并在最终回调中执行它

javascript - HTML/CSS/JS 初学者错误

php - 从 MySql 获取的数组中获取精确值

regex - Haskell:正则表达式和 Data.Text

javascript - Angular $HTTP 和 Promise

php - 在php中弹出同一应用程序的另一个用户

php - 你能注意到我的 PHP 或 MYSQL 代码有什么问题吗?

r - R paste() 可以输出 "\"吗?

powershell - 将PowerShell输出重定向到文本文件-新文件与附加结果不同