【问题标题】:Huge data string passing in url巨大的数据字符串传入 url
【发布时间】:2012-12-18 18:42:22
【问题描述】:

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

可以从任何应用程序调用 html 页面,可以是 java/javascript 或任何应用程序。但是图像字符串必须与 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 值很小的情况下才能正常工作。 但是如果由于几个浏览器的限制而导致大小很大,它将无法工作。我可以采用什么替代方法?

我的要求是在 url 中传递大量数据字符串。

【问题讨论】:

    标签: javascript url parameter-passing


    【解决方案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>
    

    【讨论】:

    • 我从来没有处理过http请求/response。我已经尝试将图像字符串值发布到上面由Qwerky发布的html页面..但是没有得到如何在html页面中使用这个图像字符串值?
    • 或者换句话说,我怎样才能得到URL指向的html页面中的imagestring值?
    【解决方案2】:

    默认使用GET 方法的标准 URL 的长度限制约为 8KB。

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

    您还可以使用 ajax like this 发布数据。

    【讨论】:

      【解决方案3】:

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

      使用 POST 方法。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2023-03-25
        • 2021-07-06
        • 1970-01-01
        • 2021-10-26
        • 2011-08-31
        • 1970-01-01
        • 2016-08-12
        相关资源
        最近更新 更多