开发工具:VS2017 版本15.7.1web
<system.webServer> 节点改成api
<system.webServer> <handlers> <remove name="OPTIONSVerbHandler" /> <remove name="TRACEVerbHandler" /> </handlers> <validation validateIntegratedModeConfiguration="false" /> <!-- 兼容IIS版本 --> <modules runAllManagedModulesForAllRequests="true"> <remove name="WebDAVModule" /> </modules> <!-- 正式环境,不须要配置跨域 --> <httpProtocol> <customHeaders> <add name="Access-Control-Allow-Origin" value="*" /> <add name="Access-Control-Allow-Headers" value="Origin, X-Requested-With, Content-Type, Accept, Authorization" /> <add name="Access-Control-Allow-Methods" value="GET, POST, PUT, DELETE, OPTIONS" /> </customHeaders> </httpProtocol> </system.webServer>
<runtime>节点中,删除已经去除的依赖包跨域
接口文档是根据项目的xml结构文件生成的,首先要开启该功能工具
在配置SwaggerConfig.cs 中,设置对应的xml路径。若是有多个,则依次配置(好比有多个模型类库)。开发工具
开启验证,这里是简单的请求头模式测试
public class TestController : ApiController { /// <summary> /// 测试接口 /// </summary> [Route("api/name")] [HttpGet] [ResponseType(typeof(MyResp))] public IHttpActionResult GetName([FromUri]MyReq req) { var resp = new MyResp(); resp.name = req.name; return Ok(resp); } } /// <summary> /// 测试请求 /// </summary> public class MyReq { /// <summary> /// 输入姓名 /// </summary> public string name { get; set; } } /// <summary> /// 测试响应 /// </summary> public class MyResp { /// <summary> /// 输出姓名 /// </summary> public string name { get; set; } }