未调用插件
Plugin not called
我有一个自定义插件,用于通过 LDAP 提供图像 IPlugin
和 IVirtualImageProvider
public bool IsPathVirtual(string virtualPath)
{
return virtualPath.StartsWith(VirtualFilesystemPrefix, StringComparison.OrdinalIgnoreCase);
}
public bool FileExists(string virtualPath, System.Collections.Specialized.NameValueCollection queryString)
{
String username = Path.GetFileNameWithoutExtension(virtualPath);
return IsPathVirtual(virtualPath) && HasPhoto(username);
}
如果我使用以下命令访问我的服务器 url
http://localhost:7805/ad/username.png?w=100 --> 200 张图像从 LDAP
一切正常
然而,如果没有查询字符串,则不会调用插件
http://localhost:7805/ad/username.png --> 404 代码未调用
这就是 imageresizer 的工作方式吗?
是的 - 至少在 v3 中。
在 ImageResizer v4 中,您可以实现 IVirtualImageProviderVpp
以使这些文件可以在 ImageResizer 之外访问(即,没有查询字符串)。
您可以选择从 ImageResizer.Storage.BlobProviderBase 继承并覆盖 2 个抽象方法;这条路线以最少的努力提供最多的功能。
我有一个自定义插件,用于通过 LDAP 提供图像 IPlugin
和 IVirtualImageProvider
public bool IsPathVirtual(string virtualPath)
{
return virtualPath.StartsWith(VirtualFilesystemPrefix, StringComparison.OrdinalIgnoreCase);
}
public bool FileExists(string virtualPath, System.Collections.Specialized.NameValueCollection queryString)
{
String username = Path.GetFileNameWithoutExtension(virtualPath);
return IsPathVirtual(virtualPath) && HasPhoto(username);
}
如果我使用以下命令访问我的服务器 url
http://localhost:7805/ad/username.png?w=100 --> 200 张图像从 LDAP
一切正常 然而,如果没有查询字符串,则不会调用插件 http://localhost:7805/ad/username.png --> 404 代码未调用
这就是 imageresizer 的工作方式吗?
是的 - 至少在 v3 中。
在 ImageResizer v4 中,您可以实现 IVirtualImageProviderVpp
以使这些文件可以在 ImageResizer 之外访问(即,没有查询字符串)。
您可以选择从 ImageResizer.Storage.BlobProviderBase 继承并覆盖 2 个抽象方法;这条路线以最少的努力提供最多的功能。