其他分享
首页 > 其他分享> > 如何重新格式化URL以使其更加安静(从… /?id = 123到… / 123)?

如何重新格式化URL以使其更加安静(从… /?id = 123到… / 123)?

作者:互联网

目前我通过以下网址访问过页面

www.foo.com/details.html?id=123

我想让它们更加宁静,比如下面的内容:

www.foo.com/details/123

我正在使用Google App Engine.目前,URL是在html-mappings文件中映射的:

 ('/details.html*', DetailsPage),

然后在DetailsPage处理程序上,它通过以下方式获取ID值:

class DetailsPage(webapp.RequestHandler):
    def get(self):
        announcement_id = self.request.get("id")

我如何重新构建它以便它可以映射URL并通过其他格式的URL提取ID:www.foo.com/details/123

谢谢

解决方法:

像这样重写你的URL映射:

('/details/(\d+)', DetailsPage),

(这要求URL的尾部包含一个或多个数字而不包含其他内容).

然后修改DetailsPage :: get()方法以接受该id参数,如:

class DetailsPage(webapp.RequestHandler):
    def get(self, announcement_id):
        # next line no longer needed
        # announcement_id = self.request.get("id") 

…继续你的代码.

标签:python,url,google-app-engine,restful-url
来源: https://codeday.me/bug/20190715/1463088.html