gpt4 book ai didi

python - cherrypy 中的 RESTful Web 服务示例

转载 作者:行者123 更新时间:2023-11-28 22:31:04 25 4
gpt4 key购买 nike

我正在尝试用 Python 编写 RESTful Web 服务。但是在尝试 Cherrypy Website 上给出的教程时我最终遇到了这样的错误

Traceback (most recent call last):
File "rest.py", line 35, in <module>
cherrypy.quickstart(StringGeneratorWebService(), '/', conf)
TypeError: expose_() takes exactly 1 argument (0 given)

rest.py 是我的文件,它在网站上和副标题“给我们一个休息”下包含完全相同的代码。

我很清楚,很明显,从错误消息来看,我缺少一个应该传入的参数。但我不清楚我应该在哪里修改该代码以使其正常工作。

我尝试在第 35 行修复一些问题,但没有任何帮助,我被卡住了!请帮我解决这个问题,或者请提供一些代码片段以在 cherrypy 中创建 REST 服务。谢谢你!

最佳答案

您使用的 CherryPy 版本 (3.2.2) 不支持类上的 cherrypy.expose 装饰器,该功能是 added in version 6 .

您可以使用将 exposed 属性设置为 True 的旧语法(它也与较新版本兼容)。

类最终会像这样:

class StringGeneratorWebService(object):
exposed = True

@cherrypy.tools.accept(media='text/plain')
def GET(self):
return cherrypy.session['mystring']

def POST(self, length=8):
some_string = ''.join(random.sample(string.hexdigits, int(length)))
cherrypy.session['mystring'] = some_string
return some_string

def PUT(self, another_string):
cherrypy.session['mystring'] = another_string

def DELETE(self):
cherrypy.session.pop('mystring', None)

关于python - cherrypy 中的 RESTful Web 服务示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41791878/

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