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

制作网站用的域名天河区网站制作

制作网站用的域名,天河区网站制作,珠海网络推广咨询,wordpress 动态生成页目录 一、什么是 SDK 二、为什么要开发 SDK 三、开发 SDK 的详细步骤 四、导入 SDK 进行测试 附#xff1a;ConfigurationProperties 注解的介绍及使用 一、什么是 SDK 1. 定义#xff1a;软件开发工具包 Software Development Kit 2. 用于开发特定软件或应用程序的工…目录 一、什么是 SDK 二、为什么要开发 SDK 三、开发 SDK 的详细步骤 四、导入 SDK 进行测试 附ConfigurationProperties 注解的介绍及使用 一、什么是 SDK 1. 定义软件开发工具包 Software Development Kit 2. 用于开发特定软件或应用程序的工具、库、文档和示例代码的集合 二、为什么要开发 SDK 1. 便于集成和使用编写 SDK为其他开发者提供一种简化的方式来使用我们提供的功能或服务开发者只需要填写简单的配置信息即可创建客户端调用我们提供的 API 进行操作而不用关心具体实现 2. 加速开发过程通过提供 SDK其他开发者可以直接使用我们预先封装好的功能和接口而无需从头开始编写相关代码 例如我们编写好了 API 签名认证的功能其中客户端需要设置请求头服务端需要取出请求头中的数据进行校验通过签名生成算法来校验签名 sign 是否一致以判断用户的权限操作繁杂。如果其他开发者引入我们编写的 SDK就不需要重复编写上面的实现代码直接填写配置创建客户端就可以直接调用现成的接口来进行 API 签名认证了 3. 提供示例和文档SDK 通常附带有详细的文档和示例代码文档可以提供清晰的说明、API 参考和最佳实践等示例代码则可以展示如何正确地使用 SDK 中提供的功能 4. 开放共享和合作其他开发者可以在我们提供的 SDK 的基础上进行二次开发和定制化 5. 功能代码复用如果其他项目需要使用API 签名认证功能直接导入之前写好的 SDK / starter就可以直接使用咯 三、开发 SDK 的详细步骤 1. 新建 SpringBoot 项目引入依赖 LombokSpring Configuration Processor在 application.yml 中填写配置时自动补全、提示代码 / 配置项 2. 修改 pom.yml 文件中的版本号和依赖 修改版本号自己开发的 starter 的版本号 删除 build/build 中的内容build 中是 Maven 构建依赖的方式不删除会构建为 jar 包开发 SDK 是要构建依赖包而不是 jar 包直接删除 build 中的内容 3. 删除项目主类创建自己 SDK 的客户端配置主类并添加注解 创建配置类在引入依赖时自动生成客户端实例 ConfigurationConfigurationProperties(leapi.client)读取配置项自动映射ComponentScanData 4.定义客户端 LeAPIClient 以及添加客户端所需的依赖 Hutool package com.ghost.leapiclientsdk.client;import cn.hutool.core.util.RandomUtil; import cn.hutool.http.HttpRequest; import cn.hutool.http.HttpResponse; import cn.hutool.http.HttpUtil; import cn.hutool.json.JSONUtil; import com.ghost.leapiclientsdk.model.User; import com.ghost.leapiclientsdk.utils.SignUtil;import java.util.HashMap; import java.util.Map;/*** 调用第三方接口的客户端* author 乐小鑫* version 1.0* Date 2024-02-01-20:28*/ public class LeAPIClient {private String accessKey;private String secretKey;public LeAPIClient(String accessKey, String secretKey) {this.accessKey accessKey;this.secretKey secretKey;}public String getNameByGet(String name) {//可以单独传入http参数这样参数会自动做URL编码拼接在URL中HashMapString, Object paramMap new HashMap();paramMap.put(name, name);String result HttpUtil.get(http://localhost:8102/api/name/, paramMap);System.out.println(result);return result;}public String getNameByPost(String name) {HashMapString, Object paramMap new HashMap();paramMap.put(name, name);String result HttpUtil.post(http://localhost:8102/api/name/, paramMap);System.out.println(result);return result;}/*** 将参数添加到请求头 map* return*/private MapString, String headerMap(String body) {HashMapString, String hashMap new HashMap();hashMap.put(accessKey, accessKey);// 一定不能发送给后端 // hashMap.put(secretKey, secretKey);hashMap.put(nonce, RandomUtil.randomNumbers(5));hashMap.put(body, body);hashMap.put(timestamp, String.valueOf(System.currentTimeMillis() / 1000));hashMap.put(sign, SignUtil.genSign(body, secretKey));return hashMap;}public String getNameByJSON(User user) {String userStr JSONUtil.toJsonStr(user);HttpResponse httpResponse HttpRequest.post(http://localhost:8102/api/name/user).addHeaders(headerMap(userStr))// 客户端在请求头中携带签名.body(userStr).execute();System.out.println(httpResponse.getStatus());String body httpResponse.body();System.out.println(body);return body;}}5. 定义生成客户端的 Bean读取配置文件 application.yml 中的配置项为 Java 对象 / 属性accessKey 和 secretKey赋值 Bean让 Spring 自动加载客户端管理 Bean 6. 指定加载配置类 创建 META-INF/spring.factories 7. 完成后 install 安装项目到本地 Maven 仓库SDK 编写完成✔ 四、导入 SDK 进行测试 1. 在 pom.xml 中引入 SDK / starter 我们自己编写的 SDK 在其他项目中导入 SDK  2. 在项目的 application.yml 中编写配置因为 SDK 引入了 Spring Configuration Processor所以会有提示 自动生成配置项提示的原理Spring Configuration Processor 生成的 3. 注入客户端实例 Resourceprivate LeAPIClient leAPIClient;// 注入客户端实例 4. 调用接口 package com.ghost.leapiinterface;import com.ghost.leapiclientsdk.client.LeAPIClient; import com.ghost.leapiclientsdk.model.User; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest;import javax.annotation.Resource;SpringBootTest class LeapiInterfaceApplicationTests {Resourceprivate LeAPIClient leAPIClient;// 注入客户端实例Testvoid testClientSDK() {// 调用接口String result leAPIClient.getNameByGet(ghost);User user new User();user.setUsername(xiaoxin);String nameByJSON leAPIClient.getNameByJSON(user);System.out.println(result);System.out.println(nameByJSON);} }5. 测试效果编写测试类注入客户端使用客户端调用接口测试成功✔ 附ConfigurationProperties 注解的介绍及使用 1. 作用将配置文件中的属性值与Java类进行绑定。它的作用是将配置文件中的属性值映射到对应的Java对象中方便在代码中直接使用这些属性值 2. 使用步骤 在需要绑定属性的 Java 类上添加 ConfigurationProperties 注解。可以通过 prefix 属性指定要绑定的属性的前缀也可以通过 value 属性指定具体的属性名。定义对应的属性字段并提供 setter 和 getter 方法。在 application.properties 或 application.yml 配置文件中设置相应的属性值。 3. 示例 ConfigurationProperties(prefix myapp) public class MyAppConfig {private String name;private int age;// getters and setters}配置文件 myapp.nameMy Application myapp.age20上述示例中使用 ConfigurationProperties(prefix myapp) 将配置文件中以 myapp 为前缀的属性值与 MyAppConfig 类中的属性进行绑定。属性 name 和 age 将分别被赋予配置文件中的属性值
http://www.dnsts.com.cn/news/95610.html

相关文章:

  • 怎么用dede建设网站室内设计师官网
  • 建站做网站哪家好电商平台开发成本
  • 官方网站开发公司排名企业建设网站的步骤
  • 华润置地建设事业部官方网站首京建设投资引导基金网站
  • 杭州网站建设找思创网络网站优化公司方案
  • wordpress 删除缓存曲靖seo
  • 写作网站哪个好重庆网红景点洪崖洞已挤满游客
  • 龙岩做网站开发找哪家c 网站开发程序员
  • 网页网站开发平台望城区城市建设投资集团门户网站
  • 微舍 微网站 怎么做wordpress首页横幅广告代码
  • 网站怎么黑wordpress template hierarchy
  • 做网站前景怎么样点击进入官方网站
  • 学软件开发的网站.net 网站地图
  • php可以做网站app吗汕头营销网络公司
  • 南京培训网站建设账号注册网站
  • nanopi neo做网站桂林网站制作多少钱
  • 个人单页网站建设网络营销方式的优缺点
  • 下载可以做动漫的我的世界视频网站常州微信网站制作
  • 做网站的职位叫什么专业做包装的电商网站
  • 南宁电子推广网站响应式网页网站设计
  • 网站建设报价比较建设旅游网站建议
  • 网站建设的域名中小学 网站建设 通知
  • 学生做网站作品图片wordpress网址一大串
  • 武邑网站建设公司采购网哪个平台比较好
  • 广州哪里有做网站推广游戏页面
  • 重庆联通的网站建设北京国家建设部网站首页
  • 湖北省建设厅监督网站东莞市建设网
  • 逐鹿网站建设手机产品展示网站模板
  • 拟一份饰品网站建设合同谷歌是如何运营的
  • 网站建设与网页设计课程小企业网站建设5000块贵吗