http://topic.csdn.net/u/20090223/14/a3adffc6-18ba-4c50-b67d-d325a3f007a7.html?seed=274125735
由于上面的帖子回复不了,我重发了一贴请教大家。
承上帖:public void ProcessRequest(HttpContext context)
{
int size = AuthCode.mySize; //Int32.Parse((String)context.Session["Size"]);
MemoryStream ms = new MemoryStream(); // 创建内存流(初始长度为0 自动扩充)
string NumStr = GetRandomNumberString(size);// 获得验证码字符
context.Session.Add("value", NumStr);//将验证码字符保存到session里面
Bitmap theBitmap = CreateImage(NumStr);// 获得验证码图片
theBitmap.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);//将位图写入内存流
context.Response.ClearContent(); //清除缓冲区里的所有内容输出
context.Response.ContentType = "image/jpeg"; //需要输出图象信息 要修改HTTP头
context.Response.BinaryWrite(ms.ToArray()); //将内存流写入HTTP输出流
theBitmap.Dispose(); //释放资源
ms.Close();//释放资源
ms.Dispose();//释放资源
context.Response.End();
}
我今天偶然发现IIS里有修改HTTP头的设置,而且上面的程序注释中提到了要修改HTTP头。
那么,HTTP头名和值该改成什么呢?
由于上面的帖子回复不了,我重发了一贴请教大家。
承上帖:public void ProcessRequest(HttpContext context)
{
int size = AuthCode.mySize; //Int32.Parse((String)context.Session["Size"]);
MemoryStream ms = new MemoryStream(); // 创建内存流(初始长度为0 自动扩充)
string NumStr = GetRandomNumberString(size);// 获得验证码字符
context.Session.Add("value", NumStr);//将验证码字符保存到session里面
Bitmap theBitmap = CreateImage(NumStr);// 获得验证码图片
theBitmap.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);//将位图写入内存流
context.Response.ClearContent(); //清除缓冲区里的所有内容输出
context.Response.ContentType = "image/jpeg"; //需要输出图象信息 要修改HTTP头
context.Response.BinaryWrite(ms.ToArray()); //将内存流写入HTTP输出流
theBitmap.Dispose(); //释放资源
ms.Close();//释放资源
ms.Dispose();//释放资源
context.Response.End();
}
我今天偶然发现IIS里有修改HTTP头的设置,而且上面的程序注释中提到了要修改HTTP头。
那么,HTTP头名和值该改成什么呢?
解决方案 »
- request.form取值
- Ibatis.net高手请进
- 读出的二进制数据
- 【请教大家】后台怎么给前台加input加onclick事件
- 关于Rediobutton_CheckedChanged事件问题
- [基础]asp.net里的form(高手勿入!)
- 请纠正:update product set size=size+1 where p_name='"+p_name.Text+"'
- 用showModalDialog显示出的DataGrid中的"选择"怎么没有用(急待高手指点)
- 用Javscript制作图片变换特效从sql数据库提取图片路径的问题
- 急﹗急﹗如何實現CSDN樹形界面
- WSDL生成的服务器端代码是做什么用的呢
- 求SQL语句,结果用逗号隔开。
<httpHandlers> 设置由应用程序子目录继承。<add> 指令按由上而下的顺序进行处理。如果两个或多个 <add> 元素指定相同的谓词/路径组合,则最后一个 <add> 会重写其他所有元素。Microsoft Internet 信息服务 (IIS) 有自己的 ISAPI 映射扩展模型。为使给定应用程序扩展与其处理程序之间的映射生效,该扩展必须在 IIS 中映射为 ASP.NET ISAPI。对于自定义扩展等非标准扩展,则必须相应地配置 IIS。http://msdn.microsoft.com/zh-cn/library/bya7fh0a(VS.85).aspx又找到一个影响因素,MSDN中搜到的。关于“<httpHandlers> ”的“<add>”。
图片的ContentType就是"image/Jpeg";
我有点乱!
主要问题在上面这个帖子里,就是IIS调试ASP.NET的网站,这个控件的图片老显示不出来。
用系统文件的形式打开运行就能显示。
<httpHandlers>
<add verb="*" path="*.jd" type="AuthCode.AuthCodeHttpHander" />
</httpHandlers>
可能是这个映射在IIS里没有,所以显示不了。我试过在IIS里加映射,没成功。
——————————————————————————————————————我问的是如果在IIS里加个与程序对应的HTTP头,该命名为什么,该赋值为什么。现在发现程序中说的修改HTTP头,其实已经由这句:context.Response.ContentType = "image/jpeg"; 实现了。