我正在尝试使用Google App Engine获取处理程序映射。webapp处理程序中的百分比编码不一致
的正则表达式是这样的:
('/api/1/apps/([-0-9a-zA-Z]+)/values/(.+)', ApiValueHandler)
当URL看起来像/api/1/apps/50b96eb0/values/New%20note%2Fhello
得到数据传递给我的处理程序的值是New%20note/hello
。正如你所看到的,它正在消除斜线,而不是空间。
是否有一个我在某处丢失的设置,还是我需要做一些自我修复?如果有一些价值,它永远不会unescape有没有这些地方的列表?
更新时间:
这是一个测试应用程序,显示了当开发服务器上的Windows 7与Python 2.5运行此行为。
main.py
from google.appengine.ext import webapp
from google.appengine.ext.webapp import util
class MainHandler(webapp.RequestHandler):
def get(self, blah):
self.response.out.write(blah)
app = webapp.WSGIApplication([('/(.*)', MainHandler)], debug=True)
util.run_wsgi_app(app)
的app.yaml
application: engineapp
version: 1
runtime: python
api_version: 1
handlers:
- url: .*
script: main.py
向我们展示你的代码;我刚刚在一个示例应用程序中尝试过这种情况,并且正在进行的操作没有任何问题。 – systempuntoout
@systempuntoout我已经为这个问题添加了代码。 – alnorth29