添加大量图片、字体、音频等静态资源文件,包括用户界面图片、模板文件和安装界面素材 添加系统版本配置文件(.version)和常量定义文件(.constant) 更新供应商依赖文件,包括Symfony VarDumper组件和相关许可证文件 添加验证码配置文件(captcha.php)和.gitignore规则
2.4 KiB
2.4 KiB
接口分析报告:/api/share
1. 接口概述
- URL:
https://shop.douba.top/api/share - Method:
GET - 功能: 获取微信分享所需的配置信息(图片、标题、简介)。
2. 路由定义
- 文件: route/api.php
- 代码位置:
Route::get('share', 'v1.PublicController/share')->name('share'); - 中间件:
StationOpenMiddleware: 检查站点是否开启。AuthTokenMiddleware(参数:false): 尝试获取用户信息,但不强制登录。
3. 控制器实现
- 文件: app/controller/api/v1/PublicController.php
- 类:
PublicController - 方法:
share - 代码逻辑:
public function share() { // 1. 获取分享图片配置 $data['img'] = sys_config('wechat_share_img'); // 2. 处理图片链接:如果是相对路径,拼接站点域名 if ($data['img'] && strstr($data['img'], 'http') === false) { $data['img'] = sys_config('site_url') . $data['img']; } $data['img'] = str_replace('\\', '/', $data['img']); // 3. 获取分享标题和简介 $data['title'] = sys_config('wechat_share_title'); $data['synopsis'] = sys_config('wechat_share_synopsis'); // 4. 返回 JSON 响应 return app('json')->successful($data); }
4. 业务逻辑流程
- 请求接收: 客户端发起
GET请求。 - 路由匹配: 匹配到
v1.PublicController/share。 - 中间件处理: 验证站点状态,尝试获取用户身份(非强制)。
- 控制器执行:
- 调用
sys_config读取wechat_share_img。 - 补全图片 URL(依赖
site_url配置)。 - 调用
sys_config读取wechat_share_title和wechat_share_synopsis。
- 调用
- 响应返回: 数据封装为标准 JSON 格式。
5. 数据来源
- 数据主要来源于
system_config表,通过sys_config()辅助函数读取。 - 涉及配置项:
wechat_share_img: 微信分享图片wechat_share_title: 微信分享标题wechat_share_synopsis: 微信分享简介site_url: 网站域名
6. 调用链总结
Client -> Route (/api/share) -> Middleware (StationOpen, AuthToken) -> PublicController::share() -> sys_config (Read Config) -> JSON Response