我偶然发现了ImageResizing.net的ImageResizer,我想知道如何将它与我的网站集成。我们有很多文件\图像,我们考虑向公众开放,然后我们有其他私人文件。我们将所有图像都放在网络服务器上的安全文件夹中,无法通过网址访问,我们有一个链接到这些文件的数据库。我们使用Web处理程序(ashx)将图像传递给用户(Web页面等),因为允许用户查看文件的规则比它们所属的角色要复杂得多。例如,某些图像只能向我们发送请求的用户查看(数据库保存此关系信息)。我们不将文件/图像作为Blob存储在数据库中,因为这会大大增加我们的数据库大小(使用SQLServer Express所以需要保持在10GB的限制以下)加上我认为它会对性能产生影响但我可能是错的。有了这个说什么是使用ImageResizer的最佳方法?
我读了一些关于IViertualImageProvider的内容,我想我必须使用这种格式(http://imageresizing.net/docs/extend/virtualimageprovider)编写一个插件。我是否只需在此处输入我的身份验证/授权逻辑,以确定是否已传送图像。有没有更好的办法?有人已经为这种情况构建了一个插件吗?
答案 0 :(得分:0)
这称为授权。您可以在HttpApplication或IHttpModule的AuthorizeRequest
事件中实现授权逻辑。
ImageResizer还提供仅适用于已处理图像的AuthorizeImage
事件。如果您的图像在文件系统上或由VirtualPathProvider提供,则无需通过ImageResizer即可访问它们,因此您应该使用AuthorizeRequest方法。