/// <summary>
/// 添加接口訪問限制流量消息處理機制
/// </summary>
/// <param name="config"></param>
public static void Set(HttpConfiguration config)
{
//ThrottlingHandler完整使用手冊: http://www.cnblogs.com/mushroom/p/4659200.html
ThrottlingHandler throttling = new ThrottlingHandler()
{
Policy = new ThrottlePolicy(perSecond: 2, perMinute: 60, perHour: 600, perDay: 1500)
{
//限制來自同IP請求的最大次數。如果在一分鐘內,同樣IP的客戶端分別調用api/values和api/values/1兩個接口, 那麼調用api/values/1的請求會被拒絕掉。
IpThrottling = true,
// 如果配置了端點限流,同一秒內你也訪問api/values/1了,請求將不會被拒絕,因爲它們走的是不同的路由
EndpointThrottling = true
},
Repository = new MemoryCacheRepository()
};
config.MessageHandlers.Add(throttling);//限流機制,消息處理器
}
public static void ConfigurationTest(IAppBuilder appBuilder)
{
//加載WebApi服務器配置信息
HttpConfiguration config = new HttpConfiguration();
WebApiMessagesConfig.Set(config);//消息處理機制
//使用配置
appBuilder.UseWebApi(config);
appBuilder.UseStageMarker(PipelineStage.PostAcquireState);
}
CSFramework.WebApi安全機制
ASP.NET WebApi快速開發框架|APP後端框架-標準版V1.0
運行平臺:Windows + .NET Framework 4.5
開發工具:Visual Studio 2015+,C#語言
數據庫:Microsoft SQLServer 2008R2+(支持多數據庫:Oracle/MySql)
產品介紹
CSFramework.WebApi是服務端快速開發框架(後端框架),藉助ASP.NET WebAPI底層架構的強大編程能力,封裝成爲可複用的以及可定製開發的服務端軟件模板,CSFramework.WebApi提供可複用的軟件架構和開發包,爲用戶快速輕鬆搭建基於HTTP協議、HTTPS協議以及支持多種客戶端(如:APP、B/S、C/S、微信公衆號、微信小程序等)各種跨平臺移動終端的服務端應用程序。
服務端應用開發、後端接口開發是軟件項目重要工作環節,服務端注重業務邏輯、數據處理和數據分析、算法等方面的設計和服務,前端主要體現在用戶體驗、界面操作和數據採集方面。前端軟件系統和後端服務架構共同搭建跨平臺大型數據管理應用系統。