0

Python 2.5 と httplib を使用して......

私は確かにpython初心者です.....しかし、これは簡単に思えますが、なぜこれが機能しないのですか?

httpConn = HTTPConnection('127.0.0.1', 44789)
httpConn.request('PUT','/ShazaamMon/setmfgdata.cgi?serial=', hwSerialNum)
httpResp = httpConn.getresponse()

xmlResp = httpResp.read()

httpConn.close()

次の応答を返します。<HTML><HEAD><TITLE>HTTP 404.......

何か手がかりはありますか?

4

3 に答える 3

2

PUT を GET に置き換える必要があると思います。

入力のサニタイズを検討する必要があります。trye

httpConn.request('GET','/ShazaamMon/setmfgdata.cgi?serial=%s' % (urllib.quote(hwSerialNum)))
于 2011-04-06T14:30:03.450 に答える
1

HTTP 404要求したリソースが存在しないことを意味します。URLは正しいですか?

さらに、リクエストのボディ (の 3 番目のパラメーターrequest()) に、リクエストのパラメーターであると思われる変数を入れます。

次のことを試してください。

httpConn.request('PUT','/ShazaamMon/setmfgdata.cgi?serial=' + str(hwSerialNum))

または多分(PUTの代わりにGETが必要な場合):

httpConn.request('GET','/ShazaamMon/setmfgdata.cgi?serial=' + str(hwSerialNum))
于 2011-04-06T14:30:24.547 に答える
0

@Angelomの答えは簡潔で正しいです。urllib および urllib2 での PUT の使用に関する例が豊富な説明については、http://www.voidspace.org.uk/python/articles/urllib2.shtml#dataを試してください。

于 2011-04-06T17:32:56.047 に答える