令牌的Django Url模式正则表达式

令牌的Django Url模式正则表达式,django,django-urls,Django,Django Urls,我需要传递令牌,如b'//x0eaa@abc.com//x00//xf0//x7f//xff//xff//xfd//x00'在我的Django Url模式中。我找不到与生成的页面未找到错误匹配的正则表达式 我的url将类似于/api/users/0/“b”//x0eaa@abc.com//x00//xf0//x7f//xff//xff//xfd//x00'/ 我试过使用下面的正则表达式 url(r'^api/users/(?p[\w\-]+)/(?p[\w.%+-]+@[A-Za-z0-9.-]

我需要传递令牌,如
b'//x0eaa@abc.com//x00//xf0//x7f//xff//xff//xfd//x00'
在我的Django Url模式中。我找不到与生成的
页面未找到
错误匹配的正则表达式

我的url将类似于
/api/users/0/“b”//x0eaa@abc.com//x00//xf0//x7f//xff//xff//xfd//x00'/

我试过使用下面的正则表达式


url(r'^api/users/(?p[\w\-]+)/(?p[\w.%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4})/$,views.getUserPagination),

请在请求头或请求体中传递令牌,然后在视图中相应地使用。

考虑到url中存在一些静态可预测元素,如-

  • api/用户/
  • /“在b之前
  • “/在'
  • 因此,我可以通过以下两种方式之一查看url。相应地,Regex提到:

  • api/users/
    (一组字、数字或连字符)
    /“
    (除换行符以外的任何字符)
    ”/

    REGEX:
    ^api\/users\/([\w\d\-]+)\/“(.*”\/$

    URL:
    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:
    URL(r'^api\/users\/([\w\d\-]+)\/”([a-g]\/\/[\w\d]*@[\w\d].[\w\d]*[\/\w\d]*')“\/$,views.getUserPagination),

  • 您应该能够使用上述两种方法中的任何一种。有多种方法可以匹配url中的令牌部分。因此,除非这是一个重大的安全问题,否则您可以使用第1点中提到的最简单方法