File 使用JSP/Tomcat私下提供文件?
我正在编写一个JSP应用程序,它应该允许用户登录(通过简单的用户名和密码检查对PostgreSQL数据库进行身份验证)并上传照片。这些图像应该是私有的,因为只有用户在登录时才能访问它们。注销后,图像URL的副本不应工作。如何使用Tomcat/JSP实现这一点File 使用JSP/Tomcat私下提供文件?,file,jsp,tomcat,private,File,Jsp,Tomcat,Private,我正在编写一个JSP应用程序,它应该允许用户登录(通过简单的用户名和密码检查对PostgreSQL数据库进行身份验证)并上传照片。这些图像应该是私有的,因为只有用户在登录时才能访问它们。注销后,图像URL的副本不应工作。如何使用Tomcat/JSP实现这一点 我不想在数据库中存储blob。首先将图像存储在服务器上不可访问的文件夹中 每当用户请求特定图像时,您都会将用户重定向到另一个接受图像请求的servlet 此servlet将检查会话,以查看用户是否经过身份验证,以及请求映像的用户是否是同一用
我不想在数据库中存储blob。首先将图像存储在服务器上不可访问的文件夹中 每当用户请求特定图像时,您都会将用户重定向到另一个接受图像请求的servlet 此servlet将检查会话,以查看用户是否经过身份验证,以及请求映像的用户是否是同一用户,并且该用户是否可以访问映像 一旦servlet验证了用户和请求,它就会将映像复制到一个临时可访问的文件夹中,并将用户重定向到该映像 您可以添加一些改进,如在复制之前检查图像是否已在临时文件夹中,以及如果文件在一个多小时前被复制,则每小时运行一次“清理作业”并从临时文件夹中删除文件(您可以“触摸”复制的任何文件)等 还有两点:
- 通过使用(vs.
),用户将无法在地址栏中看到指向图像的静态链接sendRedirect()
- 正如我在评论中提到的:没有一种方法是100%可靠的,因为用户可以下载图片,然后通过论坛、dropbox等进行共享。您将采取的所有措施都将有助于减少此类行为,但不能完全消除
- 通过使用(vs.
),用户将无法在地址栏中看到指向图像的静态链接sendRedirect()
- 正如我在评论中提到的:没有一种方法是100%可靠的,因为用户可以下载图片,然后通过论坛、dropbox等进行共享。您将采取的所有措施都将有助于减少此类行为,但不能完全消除
- 通过使用(vs.
),用户将无法在地址栏中看到指向图像的静态链接sendRedirect()
- 正如我在评论中提到的:没有一种方法是100%可靠的,因为用户可以下载图片,然后通过论坛、dropbox等进行共享。您将采取的所有措施都将有助于减少此类行为,但不能完全消除
- 通过使用(vs.
),用户将无法在地址栏中看到指向图像的静态链接sendRedirect()
- 正如我在评论中提到的:没有一种方法是100%可靠的,因为用户可以下载图片,然后通过论坛、dropbox等进行共享。您将采取的所有措施都将有助于减少此类行为,但不能完全消除
您可以使用servlet过滤器。 假设您有像/images/这样的url,其中存储了所有图像,因此使用过滤器可以检查此用户的会话是否处于活动状态 一些例子: 您可以使用servlet过滤器