gpt4 book ai didi

cherrypy - URL 调度程序

转载 作者:行者123 更新时间:2023-12-04 05:23:17 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:




8年前关闭。




Possible Duplicate:
Using mappings in CherryPy



我如何将 url regEx(例如/data/[A-Z].txt )映射到cherrypy中的资源?某处有一个简单的例子吗?我没有得到这里的文档。

http://tools.cherrypy.org/wiki/RestfulDispatch

最佳答案

您可以使用 RoutesDispatcher

import cherrypy

class City:
def __init__(self, name):
self.name = name
self.population = 10000

@cherrypy.expose
def index(self, **kwargs):
return "Welcome to %s, pop. %s" % (self.name, self.population)

@cherrypy.expose
def update(self, **kwargs):
self.population = kwargs['pop']
return "OK"

d = cherrypy.dispatch.RoutesDispatcher()
d.connect(action='index', name='hounslow', route='/hounslow', controller=City('Hounslow'))
d.connect(action='index', name='surbiton', route='/surbiton', controller=City('Surbiton'),
conditions=dict(method=['GET']))
d.mapper.connect('/surbiton', controller='surbiton',
action='update', conditions=dict(method=['POST']))

conf = {'/': {'request.dispatch': d}}
cherrypy.config.update({'server.socket_port': 5000})
cherrypy.tree.mount(root=None, config=conf)
cherrypy.engine.start()

您可以使用浏览器在 http://127.0.0.1:5000/surbiton 上进行测试。
您可以使用 curl 测试 POST 命令:
curl -i -X GET http://127.0.0.1:5000/surbiton
curl -i -d "pop=100" -X POST http://127.0.0.1:5000/surbiton
curl -i -X GET http://127.0.0.1:5000/surbiton

有来自 Routes project 的文档。 .

或者这个例子来自 appmecha .

关于cherrypy - URL 调度程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13484206/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com