Wie kann ich ein JSON-Array mit Bottle zurückgeben?
Ich schreibe eine API mitFlasche, was bisher fantastisch war. Ich bin jedoch auf eine kleine Hürde gestoßen, als ich versuchte, ein JSON-Array zurückzugeben. Hier ist mein Test-App-Code:
from bottle import route, run
@route('/single')
def returnsingle():
return { "id": 1, "name": "Test Item 1" }
@route('/containsarray')
def returncontainsarray():
return { "items": [{ "id": 1, "name": "Test Item 1" }, { "id": 2, "name": "Test Item 2" }] }
@route('/array')
def returnarray():
return [{ "id": 1, "name": "Test Item 1" }, { "id": 2, "name": "Test Item 2" }]
run(host='localhost', port=8080, debug=True, reloader=True)
Wenn ich dies ausführe und jede Route anfordere, erhalte ich die JSON-Antworten, die ich von den ersten beiden Routen erwarte:
/Single
{ id: 1, name: "Test Item 1" }
/ enthältarray
{ "items": [ { "id": 1, "name": "Test Item 1" }, { "id": 2, "name": "Test Item 2" } ] }
Daher hatte ich erwartet, eine Liste von Wörterbüchern zurückzugeben, um die folgende JSON-Antwort zu erstellen:
[ { "id": 1, "name": "Test Object 1" }, { "id": 2, "name": "Test Object 2" } ]
Aber fordern die/array
Route führt nur zu einem Fehler. Was mache ich falsch und wie kann ich ein JSON-Array auf diese Weise zurückgeben?