在url中传递大量数据字符串

时间:2013-01-04 10:22:35

标签: javascript url parameter-passing

我创建了一个html页面,其中有一个div显示图像。我必须将基础64图像字符串传递到url中的这个html页面,以便我可以在加载时设置图像div源。

可以从任何应用程序调用html页面,可能是java / javascript或any.But以及必须将图像字符串传递给页面的url。这是调用我的html页面的示例html应用程序 -

<!DOCTYPE html>
<html>
<body>
<script>
imagestring ="R0lGODlhEAAOALMAAOazToeHh0tLS/7LZv/0jvb29t/f3//Ub//ge8WSLf/rhf/3kdbW1mxsbP//mf///yH5BAAAAAAALAAAAAAQAA4AAARe8L1Ekyky67QZ1hLnjM5UUde0ECwLJoExKcppV0aCcGCmTIHEIUEqjgaORCMxIC6e0CcguWw6aFjsVMkkIr7g77ZKPJjPZqIyd7sJAgVGoEGv2xsBxqNgYPj/gAwXEQA7";
</script>
<button type="button" onclick="window.open('URL?image='+imagestring)">open the html page </button>

</body>
</html>

这里的URL指向服务器上部署的html页面。仅当imagestring值很小时,这才能正常工作。 但是如果由于几个浏览器的限制而大小很大,它将无法工作。我可以采用哪种替代方式?

我的要求是在网址传递巨大的数据字符串。

3 个答案:

答案 0 :(得分:1)

您需要POST图像数据。

<!DOCTYPE html>
<html>
 <body>

  <form action="URL" method="POST">
   <input type="hidden" name="image" value="R0lGODlhEAAOALMAAOazToeHh0tLS/7LZv/0jvb29t/f3//Ub//ge8WSLf/rhf/3kdbW1mxsbP//mf///yH5BAAAAAAALAAAAAAQAA4AAARe8L1Ekyky67QZ1hLnjM5UUde0ECwLJoExKcppV0aCcGCmTIHEIUEqjgaORCMxIC6e0CcguWw6aFjsVMkkIr7g77ZKPJjPZqIyd7sJAgVGoEGv2xsBxqNgYPj/gAwXEQA7"/>
   <button type="submit">open the html page</button>
  </form>

 </body>
</html>

答案 1 :(得分:0)

默认情况下使用GET方法的标准网址的长度限制为大约8KB。

如果要将大数据发送到服务器,则必须使用POST方法。在这种情况下,URL仍然很短,实际数据将作为参数提交给服务器。

您还可以使用ajax like this

发布数据

答案 2 :(得分:0)

您正在使用GET方法传递数据。
您无法通过GET方法传递大量数据。看看这个:HTTP URI GET limit

使用 POST 方法。