0

BaseHTTPServer と CGIHTTPServer に基づく軽量の Web アプリケーションに Python を使用しています。

辞書を取得して選択ウィジェットを埋める ajax 呼び出しに少し問題があります。選択 ID を「リスト」すると、これはオプションを動的に入力するための JavaScript コードです。

$.getJSON("/web/ajax/list.py", function(result) {
    $.each(result, function(key, value){
        $("#list").append("<option id=" + key + ">" + value + "</option>");
    });
});

サーバー側のファイル list.py では、json.dumps を使用して辞書の内容を単純にダンプすることはできませんが、そうする前にいくつかの空の行を出力する必要があります。

options = {}
options[1] = "option 1"
options[2] = "option 2"
options[3] = "option 3"

# Whitout these two lines it doesn't work!!
print """
"""

import json
print json.dumps(options)

辞書をダンプするだけではこれが機能しない理由はありますか?

余分な印刷物をなくしたい。

4

2 に答える 2

3

かなり近い... HTTPヘッダー「長さ」はありません.Content-Lengthは厳密には必要ありませんが、わかっている場合は次のように追加します。

print "Status: 200 OK"
print "Content-Type: application/json"
print "Content-Length: %d" % (len(body))
print ""
print body
于 2014-07-18T17:27:50.143 に答える