实现IHttpModule接口,处理AcquireRequestState事件

1、创建asp.net空项目,添加asp.net module,命名为MyModule1.cs

2、添加Context_AcquireRequestState方法

using Newtonsoft.Json;
using System;
using System.Web;namespace WebApplication1
{public class MyModule1 : IHttpModule{/// <summary>/// You will need to configure this module in the Web.config file of your/// web and register it with IIS before being able to use it. For more information/// see the following link: https://go.microsoft.com/?linkid=8101007/// </summary>#region IHttpModule Memberspublic void Dispose(){//clean-up code here.}public void Init(HttpApplication context){// Below is an example of how you can handle LogRequest event and provide // custom logging implementation for itcontext.LogRequest += new EventHandler(OnLogRequest);context.AcquireRequestState += Context_AcquireRequestState;}private void Context_AcquireRequestState(object sender, EventArgs e){var context = sender as HttpApplication;var info = new{name = "xiaowang",age = 21,sex = "男"};var path = context.Request.Path;if ("/queryInfo3".Equals(path)){// 防止调用两次context.CompleteRequest();context.Response.ContentType = "application/json";context.Response.Write(JsonConvert.SerializeObject(info));context.Response.Flush();}}#endregionpublic void OnLogRequest(Object source, EventArgs e){//custom logging logic can go here}}
}

4、在web.config中增加如下节点

<?xml version="1.0"?>
<configuration><system.webServer><modules><add type="WebApplication1.MyModule1" name="/queryInfo3"/></modules></system.webServer>
</configuration>
  1. 访问接口:

  2. http://localhost:64683/queryInfo3

  3. 返回数据:

  4. {"name":"xiaowang","age":21,"sex":"男"}
    

asp.net 通过IHttpModule开发接口相关推荐

  1. asp.net 通过IHttpHandler开发接口

    实现IHttpHandler接口,在web.config中配置处理器 创建asp.net web application(.net framework)空项目 添加空项 asp.net Handler ...

  2. 一起谈.NET技术,asp.net控件开发基础(18)

    本篇继续上篇的讨论,可能大家已经在使用asp.net2.0了,DataSource属性不再使用,而是跟数据源控件搭配使用.现在讨论的绑定技术都是基于1.1版本,先熟悉一下,本质上是一样的,这样一步步的 ...

  3. ASP.NET自定义控件组件开发 第四章 组合控件开发CompositeControl

    第四章 组合控件开发CompositeControl 大家好,今天我们来实现一个自定义的控件,之前我们已经知道了,要开发自定义的控件一般继承三个基 类:Control,WebControl,还有一个就 ...

  4. 一起谈.NET技术,asp.net控件开发基础(20)

    上面我们讨论了数据绑定控件的做法,但都未涉及到asp.net2.0中数据源控件的用法,让用惯了数据源控件的人可能感觉不适应.这次我们就开始讨论在asp.net2.0中,我们该如何重新定义数据绑定控件. ...

  5. ASP.NET自定义控件组件开发 第三章 为控件添加事件 后篇

    第三章 为控件添加事件 后篇 前一篇文章只是简单的说了下事件,但是大家应该方法,在ASP.NET自定义控件中只是简单那么定义事件是行不 通.如果大家开发的是WinForm中的事件,之前的定义可能没有什 ...

  6. ASP.NET MVC5 网站开发实践(二) Member区域 - 用户部分(2)用户登录、注销

    上次实现了用户注册,这次来实现用户登录,用到IAuthenticationManager的SignOut.SignIn方法和基于声明的标识.最后修改用户注册代码实现注册成功后直接登录. 目录: ASP ...

  7. ASP.NET MVC 最佳开发实践(1)

    本文提供了一些代码设计准则,目标是帮助ASP.NET MVC 开发人员创建可靠的应用程序,当然,你可根据实际应用程序选择合适的标准.本文由EntLib.com 小组翻译,欢迎分享和交流ASP.NET ...

  8. 基于ASP.NET MVC框架开发Web论坛应用程序

    我想通过本系列文章从头到尾构建一个完整的ASP.NET MVC论坛应用程序,最终的目的是探讨和推动使用ASP.NET MVC框架构建应用程序的最佳实践. 1. 简介 在本篇中,我想先从全局方面介绍一下 ...

  9. 一起谈.NET技术,asp.net控件开发基础(17)

    本篇将开始介绍如自定义数据绑定控件,这里感谢很多人的支持,有你们的支持很高兴.这里首先需要大家熟悉asp.net模板控件的使用,还有自定义模板控件.因为数据绑定控件多是基于模板控件的. 一.回顾 如果 ...

最新文章

  1. 【Linux探索之旅】第二部分第五课:用户和权限,有权就任性
  2. Jquery DataTable控制显示列,导出EXCEL
  3. 1、计算机图形学——2D变换与齐次坐标
  4. [Mvel]Mvel2.0使用指南一 基础
  5. mfc 子窗体任何消息都不触发_winform让窗体一直显示在桌面上以及FindWindow
  6. 7-189 帅到没朋友 (20 分)
  7. z-blog php 静态设置,Nginx的Z-Blog的伪静态配置方法
  8. OpenCV-Python实战(17)——人脸识别详解
  9. Sqlite - constraint failed[0x1555]: UNIQUE constraint failed
  10. 琴岛学院计算机工程系怎么样,青岛理工大学琴岛学院计算机工程系学子荣获全国网络技术挑战赛二等奖...
  11. 如何在整个数据库中查寻一条数据?
  12. YYF根据学生编号查询学生签到状态
  13. 基于组态软件的35kv变电站监控系统设计
  14. Java-Swing编程介绍
  15. 苹果开发那些事儿-D-U-N-S 号申请
  16. twitter点赞图标分析
  17. tcprewrite批量修改报文ip地址一
  18. Android-Activity生命周期、广播接收者、服务
  19. 购买腾讯云服务器流程
  20. 12 | 理解电路:从电报机到门电路,我们如何做到“千里传信”?

热门文章

  1. 25-[jQuery]-ajax
  2. 单点登录实现机制:web-sso
  3. js渐渐入门之懒人框架- laz.js
  4. python 连接sql server
  5. 04-3. 统计素数并求和(20)
  6. Windows Phone 更改datePicker的显示格式
  7. 利用Enterprise Library中的DAAB构造的数据库访问架构
  8. 传华为3com将被17亿美元出售 挑战思科?
  9. opencv-contrib-Python编译module ‘cv2.cv2‘ has no attribute ‘xfeatures2d‘
  10. 在Eclipse中实现C++ 11的完整支持