Merge pull request #461 from jamebal/dev

refactor: remove user token and name from image and audio URLs for cleaner API calls
This commit is contained in:
jmal 2025-08-22 20:32:33 +08:00 committed by GitHub
commit 600015afc4
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
11 changed files with 21 additions and 18 deletions

View File

@ -94,7 +94,7 @@
if(selectImg.id){ if(selectImg.id){
this.loading = true this.loading = true
this.cropper.reset() this.cropper.reset()
let url = fileConfig.previewUrl(this.$store.state.user.name, selectImg, this.$store.getters.token) + '&o=crop&w=1024' let url = fileConfig.previewUrl(this.$store.state.user.name, selectImg, this.$store.getters.token) + '?o=crop&w=1024'
this.sourceImg = url this.sourceImg = url
this.cropper.replace(url) this.cropper.replace(url)
this.loading = false this.loading = false

View File

@ -160,8 +160,8 @@ export default {
}, },
data() { data() {
return { return {
imageUrl: `${process.env.VUE_APP_BASE_API}/view/thumbnail?jmal-token=${this.$store.state.user.token}&name=${this.$store.state.user.name}&id=`, imageUrl: `${process.env.VUE_APP_BASE_API}/view/thumbnail?id=`,
audioCoverUrl: `${process.env.VUE_APP_BASE_API}/view/cover?jmal-token=${this.$store.state.user.token}&name=${this.$store.state.user.name}&id=`, audioCoverUrl: `${process.env.VUE_APP_BASE_API}/view/cover?id=`,
shareDialogVisible: false, shareDialogVisible: false,
generateShareLinkLoading: false, generateShareLinkLoading: false,
cancelSharing: false, cancelSharing: false,

View File

@ -3,10 +3,10 @@ import { formatSize, formatTime } from '@/utils/number'
export default { export default {
computed: { computed: {
imageUrl() { imageUrl() {
return `${process.env.VUE_APP_BASE_API}/view/thumbnail?jmal-token=${this.$store.state.user.token}&name=${this.$store.state.user.name}&id=` return `${process.env.VUE_APP_BASE_API}/view/thumbnail?id=`
}, },
audioCoverUrl() { audioCoverUrl() {
return `${process.env.VUE_APP_BASE_API}/view/cover?jmal-token=${this.$store.state.user.token}&name=${this.$store.state.user.name}&id=` return `${process.env.VUE_APP_BASE_API}/view/cover?id=`
} }
}, },

View File

@ -128,7 +128,7 @@ export default {
}, },
getImageUrlByThumbnail(file) { getImageUrlByThumbnail(file) {
if (this.$store.getters.token){ if (this.$store.getters.token){
return `${this.imageThumbnailUrl}/${file.name}?jmal-token=${this.$store.state.user.token}&name=${this.$store.state.user.name}&id=${file.id}` return `${this.imageThumbnailUrl}/${file.name}?id=${file.id}`
} else { } else {
if (this.$store.getters.shareToken) { if (this.$store.getters.shareToken) {
return `${this.shareImageThumbnailUrl}/${file.name}?share-token=${this.$store.getters.shareToken}&id=${file.id}` return `${this.shareImageThumbnailUrl}/${file.name}?share-token=${this.$store.getters.shareToken}&id=${file.id}`

View File

@ -73,7 +73,7 @@ export default {
return { return {
isShow: true, isShow: true,
activeIndex: '1', activeIndex: '1',
imageUrl: `${process.env.VUE_APP_BASE_API}/view/thumbnail?jmal-token=${this.$store.state.user.token}&name=${this.$store.state.user.name}&id=`, imageUrl: `${process.env.VUE_APP_BASE_API}/view/thumbnail?id=`,
defaultAvatar: require('../../assets/img/default-avatar.png'), defaultAvatar: require('../../assets/img/default-avatar.png'),
showTaskProgress: false, showTaskProgress: false,
taskCount: 0, taskCount: 0,

View File

@ -40,11 +40,11 @@ export default {
fileUrl = fileUrl.replaceAll(/%5C|%2F/g, '/') fileUrl = fileUrl.replaceAll(/%5C|%2F/g, '/')
if (file.userId !== store.getters.userId && token && !shareToken) { if (file.userId !== store.getters.userId && token && !shareToken) {
return `${baseUrl}/pre-file/${file.id}/${encodeURIComponent(file.name)}?jmal-token=${token}&name=${username}` return `${baseUrl}/pre-file/${file.id}/${encodeURIComponent(file.name)}`
} }
if (token) { if (token) {
return `${fileUrl}?jmal-token=${token}&name=${username}` return `${fileUrl}`
} }
if (shareToken) { if (shareToken) {
if (isFilePath(file.id)) { if (isFilePath(file.id)) {
@ -58,8 +58,8 @@ export default {
return `${baseUrl}/share-file/${file.id}/${encodeURIComponent(file.name)}` return `${baseUrl}/share-file/${file.id}/${encodeURIComponent(file.name)}`
}, },
// 预览历史文件 // 预览历史文件
previewHistoryUrl: function(historyId, name, token) { previewHistoryUrl: function(historyId) {
return `${this.baseUrl}/history/preview/file?id=${historyId}&name=${name}&jmal-token=${token}` return `${this.baseUrl}/history/preview/file?id=${historyId}`
}, },
// markdown里上传图片后的图片预览地址 // markdown里上传图片后的图片预览地址
markdownPreviewUrl: function (path){ markdownPreviewUrl: function (path){
@ -74,7 +74,7 @@ export default {
// 下载文件 // 下载文件
download: function(username, file, token) { download: function(username, file, token) {
fileApi.isAllowDownload({fileIds: [file.id]}).then(() => { fileApi.isAllowDownload({fileIds: [file.id]}).then(() => {
let url = this.previewUrl(username, file, token) + '&o=download' let url = this.previewUrl(username, file, token) + '?o=download'
window.open(url, '_self') window.open(url, '_self')
}) })
}, },

View File

@ -306,8 +306,8 @@ export default {
lastTabbarOffsetTop: 0,// 底部tabbar与上边框 上次的距离 lastTabbarOffsetTop: 0,// 底部tabbar与上边框 上次的距离
diffTabbarTop: 0,// 底部tabbar与上边框的变化距离 diffTabbarTop: 0,// 底部tabbar与上边框的变化距离
isiPhoneX: 0, isiPhoneX: 0,
imageUrl: `${process.env.VUE_APP_BASE_API}/view/thumbnail?jmal-token=${this.$store.state.user.token}&name=${this.$store.state.user.name}&id=`, imageUrl: `${process.env.VUE_APP_BASE_API}/view/thumbnail?id=`,
audioCoverUrl: `${process.env.VUE_APP_BASE_API}/view/cover?jmal-token=${this.$store.state.user.token}&name=${this.$store.state.user.name}&id=`, audioCoverUrl: `${process.env.VUE_APP_BASE_API}/view/cover?id=`,
tabActive: 0, tabActive: 0,
path: this.$route.query.path, path: this.$route.query.path,
fileList: [], fileList: [],

View File

@ -209,6 +209,9 @@ export default {
methods: { methods: {
loadScripts() { loadScripts() {
const preview = this.$refs.previewFooterHtml; const preview = this.$refs.previewFooterHtml;
if (!preview) return;
const scripts = preview.querySelectorAll('script'); const scripts = preview.querySelectorAll('script');
scripts.forEach(script => { scripts.forEach(script => {

View File

@ -135,7 +135,7 @@ export default {
data() { data() {
return { return {
activeName: '1', activeName: '1',
uploadUrl: `${process.env.VUE_APP_BASE_API}/user/setting/upload_logo?jmal-token=${this.$store.state.user.token}&name=${this.$store.state.user.name}`, uploadUrl: `${process.env.VUE_APP_BASE_API}/user/setting/upload_logo`,
title: this.$t('app.setting'), title: this.$t('app.setting'),
syncLoading: false, syncLoading: false,
clickSync: false, clickSync: false,

View File

@ -87,7 +87,7 @@
} }
}; };
return { return {
imageUrl: `${process.env.VUE_APP_BASE_API}/view/thumbnail?jmal-token=${this.$store.state.user.token}&name=${this.$store.state.user.name}&id=`, imageUrl: `${process.env.VUE_APP_BASE_API}/view/thumbnail?id=`,
title: "个人信息", title: "个人信息",
userUpdateLoading: false, userUpdateLoading: false,
dialogAvatar: false, dialogAvatar: false,

View File

@ -213,8 +213,8 @@
}, },
data() { data() {
return { return {
imageUrl: `${process.env.VUE_APP_BASE_API}/view/thumbnail?jmal-token=${this.$store.state.user.token}&name=${this.$store.state.user.name}&id=`, imageUrl: `${process.env.VUE_APP_BASE_API}/view/thumbnail?id=`,
audioCoverUrl: `${process.env.VUE_APP_BASE_API}/view/cover?jmal-token=${this.$store.state.user.token}&name=${this.$store.state.user.name}&id=`, audioCoverUrl: `${process.env.VUE_APP_BASE_API}/view/cover?id=`,
path: this.$route.query.path, path: this.$route.query.path,
pathList: [ pathList: [
{ 'folder': '', index: 0 }, { 'folder': '', index: 0 },