param('path', ''); // 资源路径,如:icon-img/home.png if (empty($resource_path)) { return fail('资源路径不能为空'); } // 基础URL配置 - 从配置文件或环境变量读取 $baseUrl = $request->domain() ?: 'http://localhost:20080'; // 构建完整的静态资源URL $resourceUrl = $baseUrl . '/static/resource/uniapp/' . $resource_path; return success([ 'resource_url' => $resourceUrl, 'base_url' => $baseUrl . '/static/resource/uniapp/', 'path' => $resource_path ]); } /** * 批量获取静态资源URL */ public function getBatchResourceUrls(Request $request) { $paths = $request->param('paths', []); // 资源路径数组 if (empty($paths) || !is_array($paths)) { return fail('资源路径数组不能为空'); } // 基础URL配置 $baseUrl = $request->domain() ?: 'http://localhost:20080'; $baseResourceUrl = $baseUrl . '/static/resource/uniapp/'; $results = []; foreach ($paths as $path) { $results[$path] = $baseResourceUrl . $path; } return success([ 'base_url' => $baseResourceUrl, 'resources' => $results ]); } /** * 获取所有可用的图标资源 */ public function getIconList(Request $request) { $baseUrl = $request->domain() ?: 'http://localhost:20080'; $baseResourceUrl = $baseUrl . '/static/resource/uniapp/'; // 定义所有可用的图标 $icons = [ 'delete.png', 'ding_wei.png', 'empty.png', 'guoqi.png', 'home-active.png', 'home.png', 'kkry.png', 'liu.png', 'loading_white.png', 'notice.png', 'profile-active.png', 'profile.png', 'tou.png', 'uploadImg.png', 'used.png', 'warn.png', 'weixin.png' ]; $iconUrls = []; foreach ($icons as $icon) { $iconUrls['icon-img/' . $icon] = $baseResourceUrl . 'icon-img/' . $icon; } // 添加评分图标 $iconUrls['rate/none.png'] = $baseResourceUrl . 'rate/none.png'; return success([ 'base_url' => $baseResourceUrl, 'icons' => $iconUrls, 'count' => count($iconUrls) ]); } }