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

Django REST传递URL参数时返回404错误求助

Django REST API URL配置404问题解决

问题原因

你后端用的是Django的url()正则路由函数,但路径里错误混用了path()函数的路径转换器语法(<str:accion>),正则表达式不识别这种写法,导致带accion参数的请求无法匹配路由,返回404。

修复方案

把正则路由里的<str:accion>替换成正则命名捕获组的写法:

修改后的后端URL配置

url(r'^' + baseurl + etl + eph + r'salud_folder_xls/listar/(?P<accion>[^/]+)/', etlEPHSaludXLSListar),
   
url(r'^' + baseurl + etl + eph + r'salud_folder_xls/descargar/(?P<nombre_archivo>.+\.xls)', etlEPHDescargarSaludFolderXLS),
  • 说明:(?P<accion>[^/]+)是正则命名捕获组,匹配除斜杠外的任意字符,实现你原本想要的str:accion参数捕获效果。
  • 注意给正则字符串加r前缀,避免转义字符干扰匹配逻辑。

验证

修改完成后,前端请求/etl/v1/eph/salud_folder_xls/listar/perro/就能正确匹配到etlEPHSaludXLSListar视图,不会再返回404。

如果你的Django版本是2.0及以上,更推荐用path()函数,写法更简洁直观:

path(baseurl + etl + eph + 'salud_folder_xls/listar/<str:accion>/', etlEPHSaludXLSListar),

内容的提问来源于stack exchange,提问作者nepko

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 00:00:59