# cim_ext **Repository Path**: tntxia/cim_ext ## Basic Information - **Project Name**: cim_ext - **Description**: CIM平台的扩展工具 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-30 - **Last Updated**: 2026-06-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # CIM Ext Backend Spring Boot 后端项目,用于提供全景图文件服务。 ## 项目结构 ``` backend/ ├── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── cim/ │ │ │ └── ext/ │ │ │ ├── CimExtApplication.java # Spring Boot 主类 │ │ │ └── controller/ │ │ │ └── PanoController.java # 全景图控制器 │ │ └── resources/ │ │ └── application.properties # 配置文件 └── pom.xml # Maven 配置文件 ``` ## 功能特性 - 提供全景图文件访问接口 - 支持文件列表查询 - 支持跨域访问 - 自动识别文件 MIME 类型 - 支持网络共享文件夹认证(用户名和密码) ## API 接口 ### 1. 获取全景图文件 ``` GET /api/pano/image?path={filepath}[&username={username}&password={password}] ``` 参数: - `path`: 文件路径(支持绝对路径、网络共享路径或相对路径) - `username` (可选): 网络共享文件夹用户名 - `password` (可选): 网络共享文件夹密码 响应: - 成功:200 OK,返回图片文件 - 未找到:404 Not Found - 错误:500 Internal Server Error 示例: ``` # 使用相对路径 GET http://localhost:8080/api/pano/image?path=preview_compressed.jpg # 使用绝对路径 GET http://localhost:8080/api/pano/image?path=C:\images\preview_compressed.jpg # 使用网络共享路径 (Windows) 带认证 GET http://localhost:8080/api/pano/image?path=\\server\share\image.jpg&username=myuser&password=mypassword # 使用网络共享路径 (Unix) 带认证 GET http://localhost:8080/api/pano/image?path=//server/share/image.jpg&username=myuser&password=mypassword ``` ### 2. 获取全景图文件列表 ``` GET /api/pano/list ``` 响应: - 成功:200 OK,返回文件名数组 - 未找到:404 Not Found - 错误:500 Internal Server Error 示例: ``` GET http://localhost:8080/api/pano/list ``` ## 配置说明 在 `application.properties` 中配置: ```properties # 服务器端口 server.port=8080 # 全景图文件存储路径(相对于 backend 目录) pano.file.path=../public/ ``` ## 运行项目 ### 前置要求 - JDK 17 或更高版本 - Maven 3.6+ ### 编译和运行 1. 进入 backend 目录: ```bash cd backend ``` 2. 编译项目: ```bash mvn clean install ``` 3. 运行项目: ```bash mvn spring-boot:run ``` 或者直接运行编译后的 jar 文件: ```bash java -jar target/cim-ext-backend-1.0.0.jar ``` ### 访问应用 启动后,应用将在 `http://localhost:8080` 上运行。 ## 前端集成 前端可以通过以下方式调用后端 API: ```javascript // 获取单个全景图 const imageUrl = 'http://localhost:8080/api/pano/image/preview_compressed.jpg'; // 获取文件列表 fetch('http://localhost:8080/api/pano/list') .then(response => response.json()) .then(files => console.log(files)); ``` ## 注意事项 1. 确保 `pano.file.path` 配置的目录存在且有读取权限 2. 文件路径支持相对路径和绝对路径 3. 默认支持的图片格式:.jpg, .jpeg, .png 4. 跨域访问已配置为允许所有来源,生产环境建议限制