我们有一个创建网页的Web应用程序。在页面的一个部分中,图表被显示。通过在HTML正文中使用“img src = ...”标记调用图形程序来创建图形。图形程序采用了许多关于高度,宽度,图例等的参数以及要绘制的数据。到目前为止我们发现将参数传递给图形程序的唯一方法是使用GET方法。这样可行,但在某些情况下,传递给grapher的查询字符串的大小接近Internet Explorer中URL的2058(或其他)字符限制。我在下面添加了一个标签示例。如果长度太长,查询字符串将被截断,程序炸弹甚至更糟,会显示不正确的图形(取决于截断发生的位置)。
带有自动提交的POST方法不适用于我们的目的,因为我们希望将图像插入调用grapher的页面上。我们不希望图形显示在单独的网页上,这是POST方法对“action =”属性中的URL所做的操作。
是否有人知道解决此问题的方法,或者我们是否只需坚持使用GET方法并告知用户在使用我们的应用程序时远离Internet Explorer?
谢谢!
答案 0 :(得分:1)
一种解决方案是让页面将数据放入会话,然后从该会话信息中提取img生成脚本。例如,页面存储$ _SESSION ['tempdata12345']并创建一个img src =“myimage.php?data = tempdata12345”。然后myimage.php从会话信息中提取。
答案 1 :(得分:0)
一种解决方案是让Web应用程序先发制人地生成整个页面 用所有必要的参数调用实际的图形程序。 也许将生成的图像存储在/ tmp文件夹中。 然后让Web应用程序创建网页并使用“img src = ...”标记将其发送到浏览器,该标记不是指图形程序,而是指预生成的图像。