From a1b189483f4bdc5fac80e535ac518b0d600a7c29 Mon Sep 17 00:00:00 2001 From: Guoguo Date: Tue, 28 Apr 2026 23:00:13 +0800 Subject: [PATCH] fix: use WeChat profile authorization login --- miniprogram/pages/login/login.js | 25 ------------------------- server/README.md | 1 - server/src/lib/cos.js | 14 +------------- server/src/routes/user.js | 15 --------------- 4 files changed, 1 insertion(+), 54 deletions(-) diff --git a/miniprogram/pages/login/login.js b/miniprogram/pages/login/login.js index c4f0d10..7e6e36c 100644 --- a/miniprogram/pages/login/login.js +++ b/miniprogram/pages/login/login.js @@ -65,31 +65,6 @@ Page({ }) }, - uploadAvatar: function (filePath) { - var ext = 'jpg' - var match = String(filePath).match(/\.([a-zA-Z0-9]+)$/) - if (match && match[1]) ext = match[1].toLowerCase() - var contentType = ext === 'png' ? 'image/png' : 'image/jpeg' - return http.post('/api/v1/user/avatar/upload-url', { - ext: ext, - content_type: contentType - }).then(function (data) { - return new Promise(function (resolve, reject) { - wx.uploadFile({ - url: data.upload_url, - filePath: filePath, - name: 'file', - header: { 'Content-Type': contentType }, - success: function (res) { - if (res.statusCode >= 200 && res.statusCode < 300) resolve(data.public_url) - else reject({ message: '头像上传失败' }) - }, - fail: function () { reject({ message: '头像上传失败' }) } - }) - }) - }) - }, - onGetPhoneNumber: function (e) { var self = this if (!e.detail || !e.detail.code) { diff --git a/server/README.md b/server/README.md index 5eebeb4..8890be0 100644 --- a/server/README.md +++ b/server/README.md @@ -67,7 +67,6 @@ HTTP 触发器或函数 URL 需要透传: - `POST /api/v1/auth/refresh` - `GET /api/v1/user/profile` - `PUT /api/v1/user/profile` -- `POST /api/v1/user/avatar/upload-url` - `POST /api/v1/user/phone` - `POST /api/v1/device/bind` - `POST /api/v1/device/unbind` diff --git a/server/src/lib/cos.js b/server/src/lib/cos.js index 0506b57..4d2b8c2 100644 --- a/server/src/lib/cos.js +++ b/server/src/lib/cos.js @@ -23,16 +23,4 @@ function getObjectUrl(key, expiresSeconds) { }) } -function getPutObjectUrl(key, contentType, expiresSeconds) { - return getClient().getObjectUrl({ - Bucket: config.cos.bucket, - Region: config.cos.region, - Key: key, - Method: 'PUT', - Sign: true, - Expires: expiresSeconds || 600, - Headers: contentType ? { 'Content-Type': contentType } : undefined - }) -} - -module.exports = { getClient, getObjectUrl, getPutObjectUrl } +module.exports = { getClient, getObjectUrl } diff --git a/server/src/routes/user.js b/server/src/routes/user.js index 8416ab7..e175423 100644 --- a/server/src/routes/user.js +++ b/server/src/routes/user.js @@ -3,7 +3,6 @@ const { ok, fail } = require('../lib/response') const { requireUser } = require('../lib/auth') const { writeLog } = require('../lib/log') const { getPhoneNumber } = require('../lib/wechat') -const { getPutObjectUrl, getObjectUrl } = require('../lib/cos') function register(router) { router.get('/api/v1/user/profile', async ctx => { @@ -34,20 +33,6 @@ function register(router) { return ok({ message: 'success' }) }) - router.post('/api/v1/user/avatar/upload-url', async ctx => { - const user = await requireUser(ctx) - if (!user) return fail(1001, 'invalid_token') - const ext = String(ctx.body.ext || 'jpg').replace(/[^a-zA-Z0-9]/g, '').toLowerCase() || 'jpg' - const contentType = ctx.body.content_type || (ext === 'png' ? 'image/png' : 'image/jpeg') - const key = 'avatars/' + user.user_id + '/' + Date.now() + '.' + ext - return ok({ - key, - upload_url: getPutObjectUrl(key, contentType, 600), - public_url: getObjectUrl(key, 7 * 24 * 3600), - content_type: contentType - }) - }) - router.post('/api/v1/user/phone', async ctx => { const user = await requireUser(ctx) if (!user) return fail(1001, 'invalid_token')