当前位置: 首页 > news >正文

技术支持 东莞网站建设东莞天助做网站费用怎么记分录

技术支持 东莞网站建设东莞天助,做网站费用怎么记分录,广州建设网站公司,安卓系统开发软件作者简介#xff1a;大家好#xff0c;我是撸代码的羊驼#xff0c;前阿里巴巴架构师#xff0c;现某互联网公司CTO 联系v#xff1a;sulny_ann#xff08;17362204968#xff09;#xff0c;加我进群#xff0c;大家一起学习#xff0c;一起进步#xff0c;一起对抗…作者简介大家好我是撸代码的羊驼前阿里巴巴架构师现某互联网公司CTO 联系vsulny_ann17362204968加我进群大家一起学习一起进步一起对抗互联网寒冬 在使用swagger2时如果api接口需要token等权限认证内容那么此时可以有两种方案进行解决方案一每个请求上面都添加对应token的key和value值。方案二全局统一添加权限认证的token。 一般情况下token都存放在header中。 引入swagger2依赖 引入对应的swagger2依赖 dependency groupIdio.springfox/groupId artifactIdspringfox-swagger2/artifactId version2.9.2/version/dependencydependency groupIdio.springfox/groupId artifactIdspringfox-swagger-ui/artifactId version2.9.2/version/dependency 集成配置方案一 首先我们来看第一种方案也就是每个请求都添加对应header信息对应的config文件配置如下​​​​​​​ import com.google.common.collect.Lists;import io.swagger.annotations.ApiOperation;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import springfox.documentation.builders.ApiInfoBuilder;import springfox.documentation.builders.ParameterBuilder;import springfox.documentation.builders.PathSelectors;import springfox.documentation.builders.RequestHandlerSelectors;import springfox.documentation.schema.ModelRef;import springfox.documentation.service.*;import springfox.documentation.spi.DocumentationType;import springfox.documentation.spi.service.contexts.SecurityContext;import springfox.documentation.spring.web.plugins.Docket;import springfox.documentation.swagger2.annotations.EnableSwagger2; import java.util.ArrayList;import java.util.Collections;import java.util.List; import static com.google.common.collect.Lists.newArrayList; ConfigurationEnableSwagger2public class SwaggerConfig { Bean public Docket createRestApi() { ParameterBuilder parameterBuilder new ParameterBuilder(); ListParameter parameters Lists.newArrayList(); parameterBuilder .name(token) .description(token令牌) .modelRef(new ModelRef(String)) .parameterType(header) .defaultValue() .required(false).build(); parameters.add(parameterBuilder.build());return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .select() //加了ApiOperation注解的类才生成接口文档 .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)) //包下的类才生成接口文档 .apis(RequestHandlerSelectors.basePackage(com.chengdeshi.controller)) .paths(PathSelectors.any()) .build() .globalOperationParameters(parameters) .securitySchemes(security()); }private ApiInfo apiInfo() { return new ApiInfoBuilder() .title(文档) .description(文档) .termsOfServiceUrl(https://www.choupangxia.com) .version(4.0.0) .build(); }private ListApiKey security() { return newArrayList( new ApiKey(token, token, header) ); } } 重点是构建了ParameterBuilder对象并通过globalOperationParameters将其配置到Docket中。 此时展示效果如下  执行每个接口请求时都需要添加token值除非写死默认值。 集成配置方案二 如果不想每次都填写这么一个token字段每次都手动进行填写。那么可以通过统一全局配置。 对应的配置文件配置如下​​​​​​​ import io.swagger.annotations.ApiOperation;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import springfox.documentation.builders.ApiInfoBuilder;import springfox.documentation.builders.PathSelectors;import springfox.documentation.builders.RequestHandlerSelectors;import springfox.documentation.service.ApiInfo;import springfox.documentation.service.ApiKey;import springfox.documentation.service.AuthorizationScope;import springfox.documentation.service.SecurityReference;import springfox.documentation.spi.DocumentationType;import springfox.documentation.spi.service.contexts.SecurityContext;import springfox.documentation.spring.web.plugins.Docket;import springfox.documentation.swagger2.annotations.EnableSwagger2; import java.util.ArrayList;import java.util.Collections;import java.util.List; import static com.google.common.collect.Lists.newArrayList; ConfigurationEnableSwagger2public class SwaggerConfig { Bean public Docket createRestApi() { return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .select() //加了ApiOperation注解的类才生成接口文档 .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)) //包下的类才生成接口文档 .apis(RequestHandlerSelectors.basePackage(com.chengdeshi.controller)) .paths(PathSelectors.any()) .build() .securityContexts(securityContexts()) .securitySchemes(security()); }private ApiInfo apiInfo() { return new ApiInfoBuilder() .title(文档) .description(文档) .termsOfServiceUrl(https://www.choupangxia.com) .version(4.0.0) .build(); }private ListApiKey security() { return newArrayList( new ApiKey(token, token, header) ); }private ListSecurityContext securityContexts() { return new ArrayList( Collections.singleton(SecurityContext.builder() .securityReferences(defaultAuth()) .forPaths(PathSelectors.regex(^(?!api).*$)) .build()) ); }ListSecurityReference defaultAuth() { AuthorizationScope authorizationScope new AuthorizationScope(global, accessEverything); AuthorizationScope[] authorizationScopes new AuthorizationScope[1]; authorizationScopes[0] authorizationScope; return new ArrayList( Collections.singleton(new SecurityReference(token, authorizationScopes))); } } 此时重点是配置了Docket的securityContexts通过该配置设置了一个全局的变量“global”。注意defaultAuth方法中SecurityReference的第一个参数为你使用的token的key我这里使用token。 此种方案展示效果如下 在右上角会出现一个Authorize的选项。  点击“Authorize”弹出下图。  在图中value的地方填写对应的token值点击个Authorize。随后使用任何接口时都会在header部分添加对应token值。 ​​​​​​​小结 当然上述是以token为例进行讲解的如果你想通过header传输其他参数也可以借鉴此方法。在此实例中大家切勿全部copy在具体场景下需要修改对应的参数值来进行使用。
http://www.pierceye.com/news/423137/

相关文章:

  • 58同城做网站怎么做南京ui培训
  • 小说网站开发的目的网站建设力洋
  • php做的网站模板wordpress破解
  • 建网站需要买些什么wordpress 时间轴微语
  • 网站建设要学什么什么网站可以做项目
  • 网站后台 更新缓存交易网站的建设规划
  • 湖北省建设厅网站如何申诉济南做网站建设的公司
  • 培训教育的网站怎么做制作网站必做步骤
  • 中国建设银行章丘支行网站品牌营销推广方案
  • 江西做网站的公司有哪些wordpress 企业 模板
  • 中国建设银行u盾下载假网站吗备案域名租用
  • 网站建设好之后都有哪些推广方法怎么做无货源电商
  • php网站开发实例教程源代码学生个人网页设计作品模板
  • 网站建设宣传册广州网站设计报价
  • 网站建设业务饱和了吗建投五公司网站
  • 有哪个网站能卖自己做的衣服app推广方案
  • 腾讯做网站上传企业官网建设_创意网站建设
  • 公司如何做网站做推广怎么做外语网站
  • 建网站公司用什么网站程序上海网上推广优化
  • 中国制造网 做网站费用东莞阳光网官网首页
  • 网站开发实用技术知识点.net手机网站源码
  • 做免费看电影的网站不违法吗企业邮箱格式怎么写才正确
  • 网站页头背景西安门户网站
  • 做网站499浙江公司响应式网站建设推荐
  • 网站设计学习外贸做那种网站
  • 互联网创业项目整合网站京东自营入驻流程及费用
  • asp网站500错误网页设计师专业培训
  • 泉州网站制作套餐整屏幕滑动的网站
  • 做阿里巴巴网站多少钱如何卸载安装wordpress
  • 企业综合型网站建设方案成都比较好的装修设计公司