diff --git a/api/chat.py b/api/chat.py index 317ab67..61259bf 100644 --- a/api/chat.py +++ b/api/chat.py @@ -378,13 +378,13 @@ class AvatarHandler(api.base.ApiHandler): else: # 缓存1天 self.set_header('Cache-Control', 'private, max-age=86400') - self.write({ - 'avatarUrl': avatar_url - }) + self.write({'avatarUrl': avatar_url}) class TextEmoticonMappingsHandler(api.base.ApiHandler): async def get(self): + # 缓存1天 + self.set_header('Cache-Control', 'private, max-age=86400') cfg = config.get_config() self.write({'textEmoticons': cfg.text_emoticons}) diff --git a/api/main.py b/api/main.py index 5deb86b..b331baf 100644 --- a/api/main.py +++ b/api/main.py @@ -68,9 +68,7 @@ class UploadEmoticonHandler(api.base.ApiHandler): url = await asyncio.get_running_loop().run_in_executor( None, self._save_file, file.body, self.request.remote_ip ) - self.write({ - 'url': url - }) + self.write({'url': url}) @staticmethod def _save_file(body, client): diff --git a/frontend/src/api/chat/ChatClientDirect/index.js b/frontend/src/api/chat/ChatClientDirect/index.js index 6523d11..1ce7a1c 100644 --- a/frontend/src/api/chat/ChatClientDirect/index.js +++ b/frontend/src/api/chat/ChatClientDirect/index.js @@ -2,7 +2,7 @@ import axios from 'axios' import { BrotliDecode } from './brotli_decode' import { getUuid4Hex } from '@/utils' -import * as avatar from '../avatar' +import * as chat from '..' const HEADER_SIZE = 16 @@ -326,7 +326,7 @@ export default class ChatClientDirect { let textEmoticons = this.parseTextEmoticons(info) let data = { - avatarUrl: await avatar.getAvatarUrl(uid), + avatarUrl: await chat.getAvatarUrl(uid), timestamp: info[0][4] / 1000, authorName: info[2][1], authorType: authorType, @@ -370,7 +370,7 @@ export default class ChatClientDirect { data = { id: getUuid4Hex(), - avatarUrl: avatar.processAvatarUrl(data.face), + avatarUrl: chat.processAvatarUrl(data.face), timestamp: data.timestamp, authorName: data.uname, totalCoin: data.total_coin, @@ -388,7 +388,7 @@ export default class ChatClientDirect { let data = command.data data = { id: getUuid4Hex(), - avatarUrl: await avatar.getAvatarUrl(data.uid), + avatarUrl: await chat.getAvatarUrl(data.uid), timestamp: data.start_time, authorName: data.username, privilegeType: data.guard_level @@ -404,7 +404,7 @@ export default class ChatClientDirect { let data = command.data data = { id: data.id.toString(), - avatarUrl: avatar.processAvatarUrl(data.user_info.face), + avatarUrl: chat.processAvatarUrl(data.user_info.face), timestamp: data.start_time, authorName: data.user_info.uname, price: data.price, diff --git a/frontend/src/api/chat/ChatClientTest.js b/frontend/src/api/chat/ChatClientTest.js index 153ab5c..aa67899 100644 --- a/frontend/src/api/chat/ChatClientTest.js +++ b/frontend/src/api/chat/ChatClientTest.js @@ -1,6 +1,6 @@ import { getUuid4Hex } from '@/utils' import * as constants from '@/components/ChatRenderer/constants' -import * as avatar from './avatar' +import * as chat from '.' const NAMES = [ '光羊', @@ -104,7 +104,7 @@ const MESSAGE_GENERATORS = [ type: constants.MESSAGE_TYPE_TEXT, message: { ...randGuardInfo(), - avatarUrl: avatar.DEFAULT_AVATAR_URL, + avatarUrl: chat.DEFAULT_AVATAR_URL, timestamp: new Date().getTime() / 1000, authorName: randomChoose(NAMES), content: randomChoose(CONTENTS), @@ -129,7 +129,7 @@ const MESSAGE_GENERATORS = [ type: constants.MESSAGE_TYPE_TEXT, message: { ...randGuardInfo(), - avatarUrl: avatar.DEFAULT_AVATAR_URL, + avatarUrl: chat.DEFAULT_AVATAR_URL, timestamp: new Date().getTime() / 1000, authorName: randomChoose(NAMES), content: '', @@ -155,7 +155,7 @@ const MESSAGE_GENERATORS = [ message: { ...randomChoose(GIFT_INFO_LIST), id: getUuid4Hex(), - avatarUrl: avatar.DEFAULT_AVATAR_URL, + avatarUrl: chat.DEFAULT_AVATAR_URL, timestamp: new Date().getTime() / 1000, authorName: randomChoose(NAMES), num: 1 @@ -171,7 +171,7 @@ const MESSAGE_GENERATORS = [ type: constants.MESSAGE_TYPE_SUPER_CHAT, message: { id: getUuid4Hex(), - avatarUrl: avatar.DEFAULT_AVATAR_URL, + avatarUrl: chat.DEFAULT_AVATAR_URL, timestamp: new Date().getTime() / 1000, authorName: randomChoose(NAMES), price: randomChoose(SC_PRICES), @@ -189,7 +189,7 @@ const MESSAGE_GENERATORS = [ type: constants.MESSAGE_TYPE_MEMBER, message: { id: getUuid4Hex(), - avatarUrl: avatar.DEFAULT_AVATAR_URL, + avatarUrl: chat.DEFAULT_AVATAR_URL, timestamp: new Date().getTime() / 1000, authorName: randomChoose(NAMES), privilegeType: randInt(1, 3) diff --git a/frontend/src/api/chat/avatar.js b/frontend/src/api/chat/index.js similarity index 77% rename from frontend/src/api/chat/avatar.js rename to frontend/src/api/chat/index.js index 8ddbb0a..e2323c4 100644 --- a/frontend/src/api/chat/avatar.js +++ b/frontend/src/api/chat/index.js @@ -26,3 +26,13 @@ export async function getAvatarUrl(uid) { } return res.avatarUrl } + +export async function getTextEmoticons() { + let res + try { + res = (await axios.get('/api/text_emoticon_mappings')).data + } catch { + return [] + } + return res.textEmoticons +} diff --git a/frontend/src/components/ChatRenderer/ImgShadow.vue b/frontend/src/components/ChatRenderer/ImgShadow.vue index 22ec060..76b3c2f 100644 --- a/frontend/src/components/ChatRenderer/ImgShadow.vue +++ b/frontend/src/components/ChatRenderer/ImgShadow.vue @@ -5,7 +5,7 @@