【发布时间】:2011-12-21 00:37:51
【问题描述】:
我在使用图片 URL 时遇到了一点问题。通常我不会关心隐藏 URL,因为它不应该有任何妥协的信息。但在这种情况下,URL 包含有关 MySQL 数据库的敏感信息。
即使它不是很常见而且我个人认为它不是最好的解决方案(当我开始使用它时就已经是这样了,我无法更改它),图像完全存储在数据库中的一个 BLOB格式。图片的URL格式如下:
http://dbserverurl/servlets/java.packages.location?sTableName=table_name&KeyColumns=value
在这个 DBServer 中,有另一个正在运行的 Web 应用程序似乎返回了包含该信息的所需图像。
如您所见,如果我将 URL 公开,它将造成相当大的安全漏洞,这绝不是我的目的!我知道我可以发送用 base64 编码的 blob 图像并直接在 img 元素中显示它们,但我要处理很多图像,我真的不认为这是最好的解决方案。
所以,如果有人知道以某种方式隐藏/更改/重定向 URL,那就太好了。我什至不知道它是否可能,但它值得一试。
您知道,MySQL 数据库由运行在 tomcat 服务器上的 Java Web 应用程序访问,然后通过 XHR 将图像发送到 JavaScript 函数,然后显示在网页中。
【问题讨论】:
-
你可以,虽然它有它自己的问题,只是将查询部分映射到一个任意值(例如新映射表中的 pk)并在图像 url 中使用它。
标签: java javascript mysql html