2017-01-22 4 views
1

pythonでRESTfulなWebサービスを作成しようとしています。しかし Cherrypy Websiteで指定されたチュートリアルを試しながら、私はrest.pyは、サイト上のサブタイトル「私たちにRESTを与える」の下にまったく同じコードが含まれている私のファイルですcherrypyのRESTful Webサービスの例

​​

のようなエラーになってしまいました。

私は、明らかにエラーメッセージから、渡すべきパラメータがないことは明らかです。しかし、私はそれを動作させるためにコードを正確に修正する必要があるのか​​明確ではありません。

私は行番号35で何かを修正しようとしましたが、何も助けなかったので、私は立ち往生しました!これをクリアするか、cherrypyでRESTサービスを作るためのコードスニペットを与えてください。ありがとうございました!

+0

クラスは次のように終わるのでしょうか? – cyraxjoe

+0

私はPythonバージョン2.7とcherrypyバージョン3.2.2を使用しました –

答えて

3

あなたが使用しているCherryPyバージョン(3.2.2)は、というクラスのデコレータcherrypy.exposeをサポートしていません。

exposed属性をTrue(それは新しいバージョンと互換性があります)に設定する古い構文を使用できます。

CherryPyにとPythonのバージョンを使用している
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) 
+0

ありがとうございました!あなたの答えは私の質問を解決しました。 –