仅需5元就可把锚文本外链
一键发布到200个新闻外链网站上

构建网页至APP转换平台盘点:众多平台青睐Vue技术选型

csharp

namespace OnlineAPI.Utility

{

///<summary>

///

///</summary>

public class AccessKeyAttribute: AuthorizeAttribute

{

///<summary>

///权限确认

///</summary>

///<param name="actionContext"></param>

///<returns></returns>

protected override bool IsConfirmed(HttpActionContext actionContext)

{

var request= actionContext.Request;

if(request.Headers.Contains("access-key"))

{

var accessKey= request.Headers.GetValues("access-key").SingleOrDefault();

//TODO验证Key

return accessKey=="123456789";

}

return false;

}

///<summary>

///处理未确认的请求

///</summary>

///<param name="actionContext"></param>

protected override void HandleUnconfirmedRequest(HttpActionContext actionContext)

{

var content= JsonConvert.SerializeObject(new{State= HttpStatusCode.Unauthorized});

actionContext.Response= new HttpResponseMessage

{

Content= new StringContent(content, Encoding.UTF8,"application/json"),

StatusCode= HttpStatusCode.Unauthorized

};

}

}

}

在你的ApiController或者是 Action加入过滤器

[AccessKey]

最终呈现效果

4.展示上传文件参数

SwaggerUI提供上传文件的功能,与添加自定义HTTP Header的方法类似,只是我们通过特定的设置来标识API支持文件上传

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.Http.Description;

using Swashbuckle.Swagger;

namespace OnlineAPI.Utility

{

///<summary>

///

///</summary>

public class UploadFilter: IOperationFilter

{

///<summary>

///文件上传处理

///</summary>

///<param name="operation"></param>

///<param name="schemaRegistry"></param>

///<param name="apiDescription"></param>

public void Apply(Operation operation, SchemaRegistry schemaRegistry, ApiDescription apiDescription)

{

if(!string.IsNullOrWhiteSpace(operation.summary)&& operation.summary.Contains("upload"))

{

operation.consumes.Add("application/form-data");

operation.parameters.Add(new Parameter

{

name="file",

in="formData",

required= true,

type="file"

});

}

}

}

}

在 SwaggerConfig.cs的 EnableSwagger配置匿名方法类中添加一行注册代码

c.OperationFilter<UploadFilter>();

API文档展示效果

赞(0)
以上所转载内容均来自于网络,不为其真实性负责,只为传播网络信息为目的,非商业用途,如有异议请及时联系btr2020@163.com,本人将予以删除。帮发外链网 » 构建网页至APP转换平台盘点:众多平台青睐Vue技术选型