From f1625e7d92ea448bae84a3c2aa80b17a968bb0c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B6=B5=E6=9B=A6?= Date: Fri, 13 Sep 2024 08:55:33 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=92=AD=E6=94=BE=E9=93=BE=E6=8E=A5?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E6=94=AF=E6=8C=81=E5=A4=8D=E6=9D=82=E7=9A=84?= =?UTF-8?q?=E9=93=BE=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xiaomusic/analytics.py | 1 - xiaomusic/httpserver.py | 9 +++++---- xiaomusic/static/app.js | 3 ++- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/xiaomusic/analytics.py b/xiaomusic/analytics.py index dc5f1a1b8..7f992fe7e 100644 --- a/xiaomusic/analytics.py +++ b/xiaomusic/analytics.py @@ -72,4 +72,3 @@ def _send_play_event(self, name, sec): event.set_event_param(name="sec", value=sec) event_list = [event] self.gtag.send(events=event_list) - diff --git a/xiaomusic/httpserver.py b/xiaomusic/httpserver.py index c4339a198..7b8408e05 100644 --- a/xiaomusic/httpserver.py +++ b/xiaomusic/httpserver.py @@ -6,6 +6,7 @@ import secrets import shutil import tempfile +import urllib.parse from contextlib import asynccontextmanager from dataclasses import asdict from typing import Annotated @@ -145,7 +146,7 @@ def playingmusic(did: str = "", Verifcation=Depends(verification)): is_playing = xiaomusic.isplaying(did) cur_music = xiaomusic.playingmusic(did) # 播放进度 - offset,duration = xiaomusic.get_offset_duration(did) + offset, duration = xiaomusic.get_offset_duration(did) return { "ret": "OK", "is_playing": is_playing, @@ -293,9 +294,9 @@ def cleanup_temp_file(tmp_file_path): async def playurl(did: str, url: str, Verifcation=Depends(verification)): if not xiaomusic.did_exist(did): return {"ret": "Did not exist"} - - log.info(f"playurl did: {did} url: {url}") - return await xiaomusic.play_url(did=did, arg1=url) + decoded_url = urllib.parse.unquote(url) + log.info(f"playurl did: {did} url: {decoded_url}") + return await xiaomusic.play_url(did=did, arg1=decoded_url) @app.post("/debug_play_by_music_url") diff --git a/xiaomusic/static/app.js b/xiaomusic/static/app.js index c36aa891b..7c0050ed9 100644 --- a/xiaomusic/static/app.js +++ b/xiaomusic/static/app.js @@ -175,7 +175,8 @@ $(function(){ $("#playurl").on("click", () => { var url = $("#music-url").val(); - $.get(`/playurl?url=${url}&did=${did}`, function(data, status) { + const encoded_url = encodeURIComponent(url); + $.get(`/playurl?url=${encoded_url}&did=${did}`, function(data, status) { console.log(data); }); });