You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决BASE_URL后自动添加多余斜杠的问题

解决URL拼接出现双斜杠的问题

问题根源

你遇到的双斜杠问题,是因为self.thumbnail.url本身自带前导斜杠(比如/media/uploads/xxx.jpg),直接和无结尾斜杠的BASE_URL拼接时,两个斜杠叠加导致的;反之如果BASE_URL带结尾斜杠、thumbnail.url也带前导斜杠,同样会出现双斜杠。

修复方案

方案1:用urljoin自动处理(推荐)

Python的urllib.parse.urljoin是专门处理URL拼接的工具,会自动识别并处理两边的斜杠,生成规范的URL。

首先导入所需模块:

from urllib.parse import urljoin
import os

然后修改你的函数属性代码:

return urljoin(os.environ['BASE_URL'], self.thumbnail.url)

方案2:手动清理冗余斜杠

手动去除BASE_URL的结尾斜杠和thumbnail.url的前导斜杠,再进行拼接:

base_url = os.environ['BASE_URL'].rstrip('/')
thumbnail_path = self.thumbnail.url.lstrip('/')
return f"{base_url}/{thumbnail_path}"

两种方法都能生成http://127.0.0.1:8000/media/uploads/xxx.jpg这类规范的URL,避免双斜杠问题。

内容的提问来源于stack exchange,提问作者Trọng Nhân

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 08:56:07