我需要在Django Url模式中传递b'//x0eaa@abc.com//x00//xf0//x7f//xff//xff//xfd//x00'
之类的标记。我无法找到导致Page not found
错误的匹配正则表达式。
我的网址就像/api/users/0/"b'//x0eaa@abc.com//x00//xf0//x7f//xff//xff//xfd//x00'"/
我尝试使用以下正则表达式
url(r'^api/users/(?P<username>[\w\-]+)/(?P<paging_state>[\w.%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4})/$', views.getUserPagination),
答案 0 :(得分:0)
请在请求标题或正文中传递令牌,然后在您的视图中相应地使用。
答案 1 :(得分:0)
考虑到您的网址中存在一些静态可预测元素,例如 -
所以我可以通过以下两种方式之一看到网址。正则表达式相应提到:
api/users/
(一组单词,数字或连字符) /"
(除换行符之外的任何字符) "/
REGEX: ^api\/users\/([\w\d\-]+)\/"(.*)"\/$
网址 url(r'^api\/users\/([\w\d\-]+)\/"(.*)"\/$', views.getUserPagination),
api/users/
(一组单词,数字或连字符) /"
(一个字符-b) '//
(任何字数或数字) @
(任何字数或数字) .
(任何编号单词或数字) (任意数量的单词,数字,正斜杠) '"/
REGEX: ^api\/users\/([\w\d\-]+)\/"([a-g]'\/\/[\w\d]*@[\w\d]*.[\w\d]*[\/\w\d]*')"\/$
网址 url(r'^api\/users\/([\w\d\-]+)\/"([a-g]'\/\/[\w\d]*@[\w\d]*.[\w\d]*[\/\w\d]*')"\/$', views.getUserPagination),
您应该可以使用以上两种中的任何一种。可以有多种方法来匹配网址中的令牌部分。因此,除非它是一个重大的安全问题,否则您可以使用第1点中提到的最简单的方法。