问题描述
我有一个viewset
和一个retrieve
视图,该视图带有一个参数,该参数是经过字符串url编码的,因为它通常带有'/'。现在,当我使用本地编码的网址(每个/
被%2F
替换)发送到本地开发服务器的请求时,我从服务器中获取了404,并且在“请求URL”中看到了我的字符串,但是已解码-因此,没有这样的路线是有道理的。使用api/ ^topic/(?P<pk>[^/.]+)/$
在此调试视图中正确显示了路由。这是我的观点:
class TopicAPI(viewsets.ViewSet):
def retrieve(self,request,pk=None):
if '%2F' in pk:
pk = pk.replace('%2F','/')
# Data retrival which works (independently tested)
return Response(topics)
我尝试了不同的单词和不同的替换方法,即用'-'代替了'2%F',虽然它可以工作,但不如URL编码稳定。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)