如何处理App Engine中的非ascii网址?例如http://example.org /Ñöñ-ÅŞÇİİ。
application = webapp.WSGIApplication([("/Ñöñ-ÅŞÇİİ", MainPage)], debug=True)
我尝试过# - coding:utf-8 - 但它没有用。
编辑: 我收到HTTP 404 Not Found。
答案 0 :(得分:2)
规则与字符串的URLEncoded形式匹配,因此您需要使用它。你可以通过查看dev_appserver的日志来看到这一点,你应该看到这样的东西:
INFO 2011-03-25 00:59:56,577 dev_appserver.py:3317] "GET /%C3%91%C3%B6%C3%B1-%C3%85%C5%9E%C3%87%C4%B0%C4%B0 HTTP/1.1" 404 -
定义规则的简单方法如下:
application = webapp.WSGIApplication([(urllib.quote("/Ñöñ-ÅŞÇİİ"), MainPage)], debug=True)
答案 1 :(得分:1)
您的浏览器将对任何不适合RFC1738
的字符进行网址编码所以你的路线可能必须是:
/%C3%91%C3%B6%C3%B1-%C3%85%C5%9E%C3%87%C4%B0%C4%B0
匹配
/Ñöñ-ÅŞÇİİ