读书人

Web新人,在html中怎么隐藏图片的真实地

发布时间: 2013-07-09 09:50:48 作者: rapoo

Web新人求助,在html中如何隐藏图片的真实地址?
本帖最后由 eakey 于 2013-06-04 20:22:00 编辑 <img src="http://b272.photo.store.qq.com/psb?/V122h2mV18h7Hj/z3nu2eC5bcpVCow8x35DGorRk7x.am2A3TbZO09QwyE!/m/dLv2IqKOEQAA&bo=IAMVAgAAAAABABM!">

src不用真实的url路径,而类似这样一串编码.这是如何做到的? URL
[解决办法]
对文件名称可以 加码
[解决办法]
估计人家又自己的一套编码机制,取图片地址时再解码!
[解决办法]

 public class ResponseImg : IHttpHandler
{
static readonly DateTime Refresh;
static readonly DateTime Now;
static ResponseImg()
{
Now = DateTime.Now;
Refresh = Now.AddMonths(1);
}

public void ProcessRequest(HttpContext context)
{

if (!string.IsNullOrEmpty(context.Request.Headers["If-Modified-Since"]))
{
DateTime IfModifiedSince = DateTime.Parse(context.Request.Headers["If-Modified-Since"]);
if (IfModifiedSince > Now)
{
context.Response.StatusCode = 304;
return;
}
}

//string folder = context.Request.QueryString["Folder"];
string filepath = context.Request.QueryString["FilePath"];
int width = int.Parse(context.Request.QueryString["Width"]);
int height = int.Parse(context.Request.QueryString["Height"]);
string hex = context.Request.QueryString["Hex"];



string path = context.Server.MapPath(string.Format("/Img/{0}", filepath));

byte[] bytes = ImageHelper.Reset(path, width, height);
//System.Drawing.Image img = ImageHelper.Reset(bytes, width, height);

context.Response.Headers["Last-Modified"] = Refresh.ToString();
//context.Response.Cache.SetExpires(DateTime.Now.Add(Refresh));
//context.Response.Cache.SetMaxAge(refresh);
context.Response.Cache.SetCacheability(HttpCacheability.Public);
context.Response.CacheControl = HttpCacheability.Public.ToString();
context.Response.Cache.SetValidUntilExpires(true);
//context.Response.StatusCode = 304;
//img.Save(context.Response.OutputStream, ImageHelper.GetImageFormat(path));
context.Response.ContentType = "image/" + hex;

context.Response.BinaryWrite(bytes);

}

public bool IsReusable
{
get
{
return false;
}
}
}


我用UrlRewrite 然后压缩图片 这样就是生成40*40 360*360像素的图片......
当然,你可以解密后,再获取正确的地址 再输出
[解决办法]
真心不明白楼主所说的真实地址是什么,是指图片的URL,还是指图片在服务器上存放的位置,前者你再怎么编码都是没有意义的,总不至于不让浏览器明白吧,而后者也不复杂,就看图片在服务器上怎么存了,如果存在数据库里,带个ID出来,如果直接存在硬盘上,自己弄一套简单的规则稍做加密就可以了。
[解决办法]
估计图片是动态生成的,或者在数据库里保存的吧。
[解决办法]
从数据库中取图片:
Using ASHX files to retrieve DB images
http://www.developerfusion.com/code/5223/using-ashx-files-to-retrieve-db-images/
[解决办法]
img src的时候加密。 访问图片页面的时候 解密。 然后输出图片.
[解决办法]
自己写个类处理下了 存的时候加密,读的时候解密
[解决办法]
加密解密过程

读书人网 >asp.net

热点推荐