我使用Python处理程序来响应HTTP API。我正在读一些url params进入处理程序。有些参数需要强制编码字符串。如何检查某个参数的值是常规字符串还是编码字符串?
handler?u=https%3A%2F%2Fstackoverflow.com
通过。
vs
handler?u=https://stackoverflow.com
应该失败,因为这是一个普通的字符串。
感谢您的帮助。
答案 0 :(得分:1)
您可以将字符串与其未加引号的版本进行比较:
>>> import urlparse
>>> s1 = 'handler?u=https%3A%2F%2Fstackoverflow.com'
>>> s2 = 'handler?u=https://stackoverflow.com'
>>> urlparse.unquote(s1) == s1
False
>>> urlparse.unquote(s2) == s2
True