CSFramework.WebApi新手入门实战开发教程(C#+VS2017)


新手入门必读:
1. 阅读《CSFramework.WebApi开发人员手册》, 了解WebApi系统功能、体系架构、接口规范等内容。
2. 调试开发环境,使用VS2015,VS2017打开CSFramework.WebApi.Foundation.sln解决方案,要能重新编译通过。.NET框架:.Net Framework 4.5
3. 附加WebApi的两个数据库。CSFramework_WebAPI,CSFramework_WebAPI_Log。
4. 修改web.config文件的connectionStrings数据库连接。
5. 将以下2个服务器之一设为启动项目。(注意:Windows服务承载方式不可进行本地调试)
6. CSFramework.WebApi开发架构:CSFramework.WebApi.Foundation.rar,基于此解决方案改名作为自己的项目。项目改名工具:http://www.csframework.com/archive/1/arc-1-20180527-2397.htm
7. C/S框架网官网搜索引擎:http://www.csframework.com/do-search.aspx


CSFramework.WebApi实战开发指引
一、配置ApiKey, 开发者账户
为了确保WebApi接口安全以及服务器安全,开发框架使用数据签名方式提交数据。平台必须给调用WebApi接口的客户端分配开发者账号。
打开CSFramework_WebAPI数据库的Api_UserKeys表,手工添加一条记录,如下:

ApiKey:开发者账号(公钥),可以在WebApi接口传参。
SecretKey:私钥,禁止在WebApi接口传参!
EncryptKey,EncryptIV:是对称加密的密钥及偏移量,必须8位字符。
二、新建功能,命令层(Command),逻辑处理层。

三、开发DAL层(数据访问层)

四、客户端调试
4.1 打开CS.WebApiConsole.Tester.csproj控制台接口调试程序进行 客户端调试。

4.2 使用PostMan工具调试开发好的接口

5.1 接口请求类

WebApi接口请求两种常用方式:
1 ) 采用数字签名方式调用接口,必须使用ModelRequestAction类。
适用于Winform客户端、APP移动端调用、微信公众号,WebApi接口可以使用私钥签名,客户端程序必须加壳或代码混淆,然后发布给终端用户使用! 要确保私钥安全不泄露!!!
2 ) 采用Token动态令牌方式调用接口,必须使用ModelRequestToken类。
适用于Web, B/S、微信小程序、等客户端调用,不可以对接口进行私钥签名,必须使用动态token!!!! 非常重要!!!
5.2 接口响应类

六、控制器命名规范
控制器必须以【具体名字】+【Controller】,
如DoController.cs MyApiController.cs, SystemController.cs

七、加载控制器所在的程序集

八、自动加载Commands,
若自定义Command在不同的程序集,调用CommandFactory.LoadCommands(typeof(CmdXXXX).Assembly)
C# Code:
Console.WriteLine("WebApiCommands:加载多个程序集的命令处理程序...");
CommandFactory.LoadCommands(typeof(CSFramework.WebApi.Foundation.CmdBase).Assembly);
//若自定义Command在不同的程序集,调用CommandFactory.LoadCommands(typeof(xxx).Assembly)
//CommandFactory.LoadCommands(typeof(CSFramework.WebApi.XXX.CmdXXXX).Assembly);
Console.WriteLine("WebApiCommands:命令处理程序数目:" + CommandFactory.Commands.Count.ToString());
//来源:C/S框架网 | www.csframework.com | QQ:23404761
CommandFactory.LoadCommands(typeof(CSFramework.WebApi.Foundation.CmdBase).Assembly);
//若自定义Command在不同的程序集,调用CommandFactory.LoadCommands(typeof(xxx).Assembly)
//CommandFactory.LoadCommands(typeof(CSFramework.WebApi.XXX.CmdXXXX).Assembly);
Console.WriteLine("WebApiCommands:命令处理程序数目:" + CommandFactory.Commands.Count.ToString());
//来源:C/S框架网 | www.csframework.com | QQ:23404761
参考文档:
数字签名(Data Sign)+存取令牌(Access Token)双重安全请求WebApi接口
http://www.csframework.com/archive/1/arc-1-20201203-2953.htm
Web端使用VUE调用WebApi接口实现用户登录及采用Token方式数据交互
http://www.csframework.com/archive/1/arc-1-20210512-3386.htm
WebApi实例教程和使用方法:部署和发布WebApi到IIS服务器
http://www.csframework.com/archive/1/arc-1-20200223-2738.htm
原创文章:WebApi接口开发实例,搭建和部署WebApi接口
http://www.csframework.com/archive/1/arc-1-20200223-2737.htm
适用开发:快速搭建APP、B/S、C/S、微信小程序、公众号、Web站点等后端应用服务程序。
运行平台:Windows + .NET Framework 4.5
开发工具:Visual Studio 2015+,C#语言
数据库:Microsoft SQLServer 2008R2+(支持多数据库:Oracle/MySql)
CSFramework.WebApi:http://www.csframework.com/cs-framework-webapi-1.0.htm

扫一扫加微信

Web端使用VUE调用WebApi接口实现用户登录及采用Token方式数据交互
http://www.csframework.com/archive/1/arc-1-20210512-3386.htm
WebApi实例教程和使用方法:部署和发布WebApi到IIS服务器
http://www.csframework.com/archive/1/arc-1-20200223-2738.htm
原创文章:WebApi接口开发实例,搭建和部署WebApi接口
http://www.csframework.com/archive/1/arc-1-20200223-2737.htm
ASP.NET WebApi快速开发框架|APP后端框架-标准版V1.0




CSFramework.WebApi:http://www.csframework.com/cs-framework-webapi-1.0.htm

扫一扫加微信


版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
NewDoc C/S框架网