Asp.net Core 入门实战 2.请求流程

Asp.Net Core 是开源,跨平台,模块化,快速而简单的Web框架.

Asp.net Core官网的一个源码合集,方便一次性Clone,喜欢的(Star),本系列持续更新,也可以通过我的网站访问,欢迎探讨交流

接上一篇

目录

748773-20180205144804279-1793181060.png
asp.net core实现了一个跨平台的宿主和web服务器. 一旦你调用了WebHost对象的Start方法,你就运行了一个监听Http请求的Web服务器,它可以运行在32位的linux系统甚至是树莓派上.然而在生产环境还是建议你使用一些反向代理工具,如Nginx,IIs,Apache等.为什么需要反向代理,因为Kestrel只是一个简单的Web服务器,其他语言像java,python,nodejs,ruby,你会看到一些Web服务器PM2或者Passenger结合反向代理工具使用.这些Web服务器提供了监控,日志,负载均衡和流程管理功能,对于一个成熟的Web服务器而言.在Windows平台,你可以使用IIS反向代理,在linux服务器使用nginx/apache来实现反向代理.

宿主

宿主WebHost用来配置服务器和处理请求管道.

public interface IWebHost:IDisposable
{
    //从Server加载Http功能接口列表
    IFeatureCollection ServerFeatures { get; }
    //服务容器
    IServiceProvider Services { get; }
    // 开始监听端口
    void Start();
    //启动主机
    Task StartAsync(CancellationToken cancellationToken = default(CancellationToken));
    //尝试停止主机
    Task StopAsync(CancellationToken cancellationToken = default(CancellationToken));
}

Web服务器

Kestrel 是跨平台 HTTP 服务器,它基于 libuv(一个跨平台异步 I/O 库). Web Server实现了IServer接口,实现了Http服务器.

public interface IServer
{
    //Http功能接口列表
    IFeatureCollection Features { get; }
    //开始处理请求
    Task StartAsync<TContext>(IHttpApplication<TContext> application, CancellationToken cancellationToken);
    // 停止请求处理,关闭服务器,尽可能的不是强制结束,而是等待请求处理结束后再停止
    Task StopAsync(CancellationToken cancellationToken);
}

请求委托

748773-20180205144818935-1127825303.png
Asp.net Core包含了一组请求委托(RequestDelegate),请求委托处理Http请求, 这一组请求委托组成了请求管道.(Pipeline)

中间件(Middleware)

  • 为请求委托指定匿名方法,通过 Run、Map 和 Use 扩展方法来配置.
  • 为请求委托指定命名方法,通过UseMiddleware来配置,通过反射生成类的实例,再调用实例的Invoke方法或者InvokeAsync方法来实例化委托.

HTTP功能接口

  • Web Server的功能接口集合, 服务器定义的Http 功能接口和相应的中间件.

  • 请求上下文(Context)的功能接口集合,中间件可以更改该功能集合并添加新的HttpFeature接口支持.

迷你的代码示例

middleware/Demo

以上内容有任何错误或不准确的地方请大家指正,不喜勿喷! 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。如果觉得还有帮助的话,可以点一下右下角的【推荐】,希望能够持续的为大家带来好的技术文章!想跟我一起进步么?那就【关注】我吧。

转载于:https://www.cnblogs.com/gutun/p/pipeline.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ASP.NET MVC中使用Vue.js,您需要按照以下步骤进行配置: 1. 在您的ASP.NET MVC项目中安装Vue.js。您可以使用npm或CDN来安装Vue.js。 2. 创建一个Vue.js组件,并将其添加到您的ASP.NET MVC视图中。 3. 在您的ASP.NET MVC视图中添加Vue.js依赖项,并将其链接到您的Vue.js组件。 4. 使用Vue.js指令和模板语法编写HTML标记。 以下是一个简单的例子,演示如何在ASP.NET MVC中使用Vue.js: 1. 安装Vue.js 您可以通过npm安装Vue.js,打开命令提示符,进入您的ASP.NET MVC项目文件夹,并运行以下命令: ``` npm install vue ``` 或者您可以使用CDN,将以下代码添加到您的ASP.NET MVC视图中: ``` <script src="https://cdn.jsdelivr.net/npm/vue"></script> ``` 2. 创建Vue.js组件 创建一个Vue.js组件,并将其保存到您的ASP.NET MVC项目中。例如,创建一个名为"MyComponent.vue"的组件。 ``` <template> <div> <h1>{{ message }}</h1> </div> </template> <script> export default { data() { return { message: 'Hello Vue!' } } } </script> ``` 3. 添加Vue.js依赖项 在您的ASP.NET MVC视图中添加Vue.js依赖项,并将其链接到您的Vue.js组件。 ``` <head> <script src="https://cdn.jsdelivr.net/npm/vue"></script> <script src="~/Scripts/MyComponent.vue"></script> </head> ``` 4. 使用Vue.js指令和模板语法编写HTML标记 在您的ASP.NET MVC视图中使用Vue.js指令和模板语法编写HTML标记。 ``` <div id="app"> <my-component></my-component> </div> <script> new Vue({ el: '#app', components: { 'my-component': MyComponent } }) </script> ``` 这样,您就可以在ASP.NET MVC中使用Vue.js了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值