我正在尝试将我的应用分解为单独的脚本。这项工作的一部分意味着将 api 调用分解到它自己的文件中。然而,对 api 的调用(如 http://example.com/api/game/new 不再有效)。 我的 app.yaml 包含这个:
- url: /api.*
script: api.py
这似乎是正确的重定向,因为这个配置有效:
def main():
application = webapp.WSGIApplication([('/.*', TestPage)], debug=True)
util.run_wsgi_app(application)
但是这个不是:
def main():
application = webapp.WSGIApplication([('/game/new$', CreateGame),
('/game/(d+)$', GameHandler)],
debug=True)
util.run_wsgi_app(application)
最佳答案
您在 WSGI 应用程序中使用的 URL 模式必须是完整路径 - 例如,/api/game/.... App Engine 基础结构使用 app.yaml 中的正则表达式来路由请求,但它不会根据它们修改请求路径。
关于python - App Engine 正则表达式问题将 URL 定向到脚本和处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3812566/