Bí quyết của sự thành công – nếu có - đó là khả năng tự đặt mình vào địa vị người khác và xem xét
sự vật vừa theo quan điểm của họ vừa theo quan điểm của mình
Henry Ford
Tags thiết kế website
Tên miền, Đăng ký tên miền,
thiet ke web, chuyen thiet ke web,
Thiết kế website,
chuyên thiết kế website,
tu van web,tư vấn web,
dich vu website,
dịch vụ website,
web design,
giải pháp thiết kế website,
website thương mại,
quang ba web,
quang ba website,
dịch vụ SEO,
tutorial,
thiết kế website bán hàng,
thiết kế website doanh nghiệp,
hosting,
từ khóa,
công ty thiết kế web,
Website template,
thư viện website
ASP.Net và bảo mật link hình ( 1088 lượt xem )

Có lẽ các bạn đã từng coi qua các link của vnexpress.net ? các bạn muốn tạo ra cho mình một link giống như thế với asp.net thì cùng nhau nghiên cứu
Trước hết chúng ta cần khai báo trong web.config với chuỗi dữ liệu sau :
<httpHandlers>
<add verb="*" path="ShowImage.axd" type="ImageHandler.ImageSever" />
</httpHandlers>
Sau đó chúng ta sẽ viết một file ImageServer.cs trong app_code:
namespace ImageHandler
{
public class ImageSever : IHttpHandler
{
public ImageSever()
{
//
// TODO: Add constructor logic here
//
}
public void ProcessRequest(System.Web.HttpContext context)
{
try
{
string strX = context.Request.Params["l"].ToString();
string strY = context.Request.Params["t"].ToString();
string strZ = context.Request.Params["z"].ToString();
string strPath = context.Server.MapPath(ConfigurationManager.AppSettings["MapImage"].ToString()+"lvl"+strZ+"/"+strX+"_"+strY+"_"+strZ+".png");
if(File.Exists(strPath))
{
writeImage(strPath, context);
}
else
{
//writeImage(strPath, context);
writeImage(context.Server.MapPath(ConfigurationManager.AppSettings["MapImage"].ToString()+"noimage.gif"), context);
}
}
catch (Exception objEx)
{
context.Response.Write(objEx.Message);
}
}
public bool IsReusable
{
get
{
return true;
}
}
/// <summary>
///
/// </summary>
/// <param name="Path"> gia tri can dua vao</param>
/// <param name="context"> Context nội dung</param>
public void writeImage(string strPath, System.Web.HttpContext context)
{
string strContentType = "image/PNG";
context.Response.ContentType = strContentType;
context.Response.WriteFile(strPath);
}
}
}
Với phần trên bạn cần suy nghĩ trước hết là namespace . Sau đó đến phần khai báo public class --> ImageSever : IHttpHandler ở phần này chúng ta có thêm 2 class cần thiết phải khai báo nhằm hổ trợ cho giá trị trả về của class này
public bool IsReusable
public void ProcessRequest(System.Web.HttpContext context)
và sau đó là cách trả về giá trị hình ảnh mà bạn cần.
Chúc vui vẻ và may mắn
Phuc Thinh Website