0
RESTスタイルAPIを作成するためのcherrypyドキュメントページのチュートリアル7に従ってみてください。コピー&ペーストtutorialからコード、Cherrypy RESTチュートリアルはTypeErrorを返します:_expose()は1つの引数をとります
import random
import string
import cherrypy
@cherrypy.expose
class StringGeneratorWebService(object):
@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)
if __name__ == '__main__':
conf = {
'/': {
'request.dispatch': cherrypy.dispatch.MethodDispatcher(),
'tools.sessions.on': True,
'tools.response_headers.on': True,
'tools.response_headers.headers': [('Content-Type', 'text/plain')],
}
}
cherrypy.quickstart(StringGeneratorWebService(), '/', conf)
が、実行エラー
File "H:/researchInstrumentCatalog/dqapi/core/test.py", line 36, in <module>
cherrypy.quickstart(test(), '/', conf)
TypeError: expose_() takes exactly 1 argument (0 given)
与えられた私は、このようにthis questionは、あなたがリンクされていることの問題では
ご迷惑をおかけして申し訳ありませんが、これは機能します。 –
私はexposed = Trueを以前に追加しようとしましたが、exposeデコレータを削除しなかったので、問題を解決したのは後者でした –