[项目] 运行项目 ✅

看下我们的代码结构: ![](https://cs-wiki.oss-cn-shanghai.aliyuncs.com/image-20231102230054057.png) component 是封装的几个组件。**start 是整个项目的入口**,包括启动类和配置文件都放在这里,把所有环境都配好之后,**运行 start 中的 Appliation 类就可以跑起整个项目了**,目前主要提供了两个接口: 1. 创建短链 2. 长链重定向 接口定义在 adapter 模块中,这个模块是对外的模块,比如 web 层的 Controller,Job,消息消费者,RPC 调用等都是在这个模块中定义(**所以如果你想要跟源码,就从这个模块中一层一层往里进就可以了**): ![](https://cs-wiki.oss-cn-shanghai.aliyuncs.com/image-20231103214416951.png) ## AppId 注册 注册一个 appId,用于后续权限校验 POST:`http://localhost:8080/api/register/` ![](https://cs-wiki.oss-cn-shanghai.aliyuncs.com/image-20240524124404271.png) ## 获取 AccessToken 拿着 appId 和 appSecret 去请求 accessToken POST:`http://localhost:8080/api/token/` ![](https://cs-wiki.oss-cn-shanghai.aliyuncs.com/image-20240524124459724.png) accessToken 的有效时间是 2h,失效后需要重新调此接口获取新的 accessToken ## 创建短链 POST:`http://localhost:8080/api/create/` ![](https://cs-wiki.oss-cn-shanghai.aliyuncs.com/image-20231102230940579.png) 注意要在 Headers 中填入在之前申请到的 appId、appSecret、accessToken ![](https://cs-wiki.oss-cn-shanghai.aliyuncs.com/image-20240524125037107.png) 任意一个对不上,权限校验就会失败报错: ![](https://cs-wiki.oss-cn-shanghai.aliyuncs.com/image-20240524130520822.png) **另外注意,生成的 shortUrl 短链的域名是基于你在配置文件中配置的 `ezlink.default.domain=localhost:8080`。这个域名必须要在数据库表 `domain_conf` 中注册,否则会返回错误信息**: ![](https://cs-wiki.oss-cn-shanghai.aliyuncs.com/image-20231102231132762.png) 可以使用如下 SQL 语句注册域名: ```sql BEGIN; INSERT INTO domain_conf(domain_value,protocol) VALUES ('localhost:8080', 'http'); COMMIT; ``` ## 长链重定向 GET:`http://localhost:8080/压缩码` 注意这个接口返回的是 `Mono<Void>`, 会运行一个子线程重定向到原始长链,所以可以**直接在浏览器中输入这个地址,然后就会自动跳转到原始长链**