后端: - Model层新增UploadSetting配置模型 - Core层新增IUploadConfigService/UploadConfigService,从Admin库读取COS配置生成预签名URL - Api层新增UploadController,提供POST /api/upload/presignedUrl接口 - ServiceModule注册UploadConfigService服务 前端: - api/user.js修复接口路径:updateProfileupdate_userinfo,upload/imageupload/presignedUrl - 新增utils/upload.js COS直传工具(获取预签名URL直传COS返回文件URL) - 个人资料页改为:选图直传COS保存时提交headimg URL到update_userinfo
44 lines
1019 B
JavaScript
44 lines
1019 B
JavaScript
/**
|
||
* 用户接口模块
|
||
*/
|
||
|
||
import { get, post } from './request'
|
||
|
||
/**
|
||
* 获取当前登录用户信息
|
||
* GET /api/userInfo
|
||
* @returns {Promise<Object>} 用户信息
|
||
*/
|
||
export function getUserInfo() {
|
||
return get('/userInfo')
|
||
}
|
||
|
||
/**
|
||
* 更新用户信息(昵称、头像等)
|
||
* POST /api/update_userinfo
|
||
* @param {Object} data - 更新数据
|
||
* @param {string} [data.nickname] - 昵称
|
||
* @param {string} [data.headimg] - 头像URL(COS地址)
|
||
* @returns {Promise<Object>}
|
||
*/
|
||
export function updateUserInfo(data) {
|
||
return post('/update_userinfo', data)
|
||
}
|
||
|
||
/**
|
||
* 获取COS预签名上传URL
|
||
* POST /api/upload/presignedUrl
|
||
* @param {string} fileName - 文件名
|
||
* @param {string} [contentType] - MIME类型
|
||
* @returns {Promise<Object>} { uploadUrl, fileUrl, expiresIn }
|
||
*/
|
||
export function getPresignedUploadUrl(fileName, contentType = 'image/png') {
|
||
return post('/upload/presignedUrl', { fileName, contentType })
|
||
}
|
||
|
||
export default {
|
||
getUserInfo,
|
||
updateUserInfo,
|
||
getPresignedUploadUrl
|
||
}
|