• λ我爱Aspx >> Asp.Net >> 开发基于ASP.NET WebService的图片验证码服务
  • 开发基于ASP.NET WebService的图片验证码服务

  • :aspxer  Դ:5iaspx  :2007-8-1 13:14:01  ؼ:.net,asp.net,web,asp,webservice
  • bmp.Dispose();

    graph.Dispose();

    strKey = strResult;

    byte[] byteReturn = bstream.ToArray();

    bstream.Close();

    return byteReturn;

    }

    2. 测试WebMethod,添加一个WebForm,引用上述WebService,引用名为imagesvr。在Page_Load中添加代码:

    ...

    imagesvr.MyService imgsvr = new imagesvr.MyService();

    string strKey = "";

    byte[] data = imgsvr.GenerateVerifyImage(5,ref strKey);

    Response.OutputStream.Write(data,0,data.Length);

    ...

    3. 运行。每次refresh这个WebForm时,就会显示一个新生成的图片验证码,而函数的输出参数strKey保存的就是这个验证码的实际内容,可以保存在Session中,作为验证使用。

    上次开发出图片验证码之后,根据一些朋友的建议,本着验证码易识别(针对人),不易破解,美观的原则,改进了验证码生成的算法,采用图像滤镜的方法,对图片验证码进行反破解干扰,结果图片示例如下:

    开发基于asp.net webservice的图片验证码服务

    滤镜效果主要采用波形(wave)算法,通过对X轴Y轴的正弦波形处理,产生叠加效果。算法主要描述如下:

    private const double PI = 3.1415926535897932384626433832795;

    Ҷƪл˵?
  • һƪjs代码小记(判断textbox的长度,并且固定最多收入字符)
    һƪ六步使用ICallbackEventHandler实现无刷新回调