104
Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.
Hiện tại Flask
sẽ gây ra lỗi khi Jsonifying một danh sách.
Tôi biết có thể có những lý do bảo mật //github.com/mitsuhiko/flask/issues/170, nhưng tôi vẫn muốn có cách trả lại danh sách JSON như sau:
[
{'a': 1, 'b': 2},
{'a': 5, 'b': 10}
]
thay vì
{ 'results': [
{'a': 1, 'b': 2},
{'a': 5, 'b': 10}
]}
khi trả lời yêu cầu application/json
. Làm cách nào để trả lại danh sách JSON trong bình bằng Jsonify?
Hỏi ngày 15 tháng 9 năm 2012 lúc 7:03Sep 15, 2012 at 7:03
2
Bạn không thể nhưng bạn có thể làm điều đó như thế này. Tôi cần cái này cho JQuery-File-Upload
import json
# get this object
from flask import Response
#example data:
js = [ { "name" : filename, "size" : st.st_size ,
"url" : url_for['show', filename=filename]} ]
#then do this
return Response[json.dumps[js], mimetype='application/json']
Kagan La Mã
10.3k26 Huy hiệu vàng84 Huy hiệu bạc124 Huy hiệu đồng26 gold badges84 silver badges124 bronze badges
Đã trả lời ngày 6 tháng 10 năm 2012 lúc 10:24Oct 6, 2012 at 10:24
Mianosmianosmianos
93212 Huy hiệu bạc12 Huy hiệu đồng12 silver badges12 bronze badges
5
Điều này đang làm việc cho tôi. Bạn đang sử dụng phiên bản nào của bình?
from flask import jsonify
...
@app.route['/test/json']
def test_json[]:
list = [
{'a': 1, 'b': 2},
{'a': 5, 'b': 10}
]
return jsonify[results = list]
Andrey
1.44614 Huy hiệu bạc12 Huy hiệu đồng14 silver badges12 bronze badges
Đã trả lời ngày 15 tháng 9 năm 2012 lúc 8:29Sep 15, 2012 at 8:29
2
Một danh sách trong bình có thể dễ dàng Jsonify bằng cách sử dụng Jsonify như:jsonify like:
from flask import Flask,jsonify
app = Flask[__name__]
tasks = [
{
'id':1,
'task':'this is first task'
},
{
'id':2,
'task':'this is another task'
}
]
@app.route['/app-name/api/v0.1/tasks',methods=['GET']]
def get_tasks[]:
return jsonify[{'tasks':tasks}] #will return the json
if[__name__ == '__main__']:
app.run[debug = True]
Đã trả lời ngày 12 tháng 3 năm 2016 lúc 14:15Mar 12, 2016 at 14:15
HirohiroHiro
2.8621 Huy hiệu vàng14 Huy hiệu bạc9 Huy hiệu đồng1 gold badge14 silver badges9 bronze badges
1
Nếu bạn đang tìm kiếm theo nghĩa đen để trả lại danh sách JSON trong bình và bạn hoàn toàn chắc chắn rằng biến của bạn là một danh sách thì cách dễ dàng là [trong đó bin là danh sách 1 và 0]:JSON list in flask and you are completly sure that your variable is a list then the easy way is [where bin is a list of 1's and 0's]:
return jsonify[{'ans':bin}], 201
Cuối cùng, trong khách hàng của bạn, bạn sẽ có được một cái gì đó như
{"Ans": [0,0, 0,0, 1.0, 1.0, 0,0]}
Đã trả lời ngày 6 tháng 7 năm 2017 lúc 6:04Jul 6, 2017 at 6:04
Yor Jaggya JaggyYor Jaggy
3353 Huy hiệu bạc8 Huy hiệu Đồng3 silver badges8 bronze badges
Josonify hoạt động ... Nhưng nếu bạn có ý định vượt qua một mảng mà không có khóa 'kết quả', bạn có thể sử dụng thư viện JSON từ Python. Chuyển đổi sau đây làm việc cho tôi.
import json
@app.route['/test/json']
def test_json[]:
mylist = [
{'a': 1, 'b': 2},
{'a': 5, 'b': 10}
]
return json.dumps[mylist]
G m
Phim huy hiệu vàng 18,9k1010 gold badges77 silver badges80 bronze badges
Đã trả lời ngày 7 tháng 1 năm 2014 lúc 14:42Jan 7, 2014 at 14:42
Madhan Ganeshmadhan GaneshMadhan Ganesh
2.2432 Huy hiệu vàng23 Huy hiệu bạc19 Huy hiệu đồng2 gold badges23 silver badges19 bronze badges
1