最近私のubuntuマシンにwebpyがダウンロードされましたが、現在POST機能に問題があります。ここ は私のコードです:Webpy AttributeError 'header key'
#! /usr/bin/env python
import web,interface
urls = (
'/', 'index'
)
class index(object):
def POST(self):
data = web.input()
interface.interfaceModule(data.decider)
return "SENT TO INTERFACE"
if __name__ == "__main__":
app = web.application(urls, globals())
app.run()
インタフェースは、POST値を受け取るだけで、別のクラスで、シリアル経由アルドゥイーノに送信します。ここ
がエラー出力である:指定されたキー、および任意の値と、POST-MAN:
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/web/application.py", line 239, in process
return self.handle()
File "/usr/local/lib/python2.7/dist-packages/web/application.py", line 230, in handle
return self._delegate(fn, self.fvars, args)
File "/usr/local/lib/python2.7/dist-packages/web/application.py", line 462, in _delegate
return handle_class(cls)
File "/usr/local/lib/python2.7/dist-packages/web/application.py", line 438, in handle_class
return tocall(*args)
File "/var/www/cgi-bin/index.py", line 12, in POST
interface.interfaceModule(data.decider)
File "/usr/local/lib/python2.7/dist-packages/web/utils.py", line 76, in _ _getattr__
raise AttributeError, k
AttributeError: 'decider'
192.168.10.1:52225 - - [09/Dec/2016 19:41:09] "HTTP/1.1 POST /" - 500 Internal Server Error
Iクロムアプリを使用してPOSTリクエストを送信しました。
を試してみてください。 'データ'の内容を確認するには 'print(data、type(data)、dir(data))'を使います。 – furas
@furus前にオブジェクト値を出力しようとしましたが、それは空です。 "" と入力し、dir()にdecider属性は表示されません。これを修正するにはどうすればいいですか? –
これはあなたが間違ったデータを投稿することを意味します。あなたは値を送信しません。 – furas