1

HTTP PUTメソッドを使用して、Google App Engineアプリケーションにデータを送信したいのですが、良い例はありますか?グーグルから何も見つかりません。

そして、私の次の例も機能していません。

import webapp2

class MainHandler(webapp2.RequestHandler):
    def put(self):
        self.response.write('test put')

app = webapp2.WSGIApplication([
    (r'/test/(.*)', MainHandler)
], debug=True)

そして、私はこのエラーが発生しました。

TypeError: put() takes exactly 1 argument (2 given)
4

3 に答える 3

5

次のようにマッピングしてput引数を渡します。

(r'/test/(.*)', MainHandler)

(.*)後にこのurlpathにアクセスするために使用するものは何でも、putメソッドを渡します/test/
次のようにハンドラーを更新します。

class MainHandler(webapp2.RequestHandler):
    def put(self, myarg):
        self.response.write('test put, myarg is %s' %myarg)
于 2012-10-31T13:25:11.113 に答える
2
TypeError: put() takes exactly 1 argument (2 given)

1つ(self)のみを指定したときに、メソッド'put'が2つの引数で呼び出されたことを意味します。

これは機能するはずです:

class MainHandler(webapp2.RequestHandler):
    def put(self, param):
        self.response.write('test put')
于 2012-10-31T13:25:26.363 に答える
0

リクエストオブジェクトからPOST変数を使用できます

class MainHandler(webapp2.RequestHandler):
    def put(self):
        self.response.write(self.request.POST)

curlを使用した使用例

curl -X PUT -d"x=1&y=2" http://localhost:8080/add
于 2013-03-16T18:04:18.577 に答える