【发布时间】:2016-02-24 14:47:30
【问题描述】:
过去几个月我一直在研究 Django-rest-framework。我不太明白如何使用 json 请求。你能帮帮我吗,我卡在这里好几个月了。
我在另一个网站上有一个第三方 html sn-p,假设它发送这个 json 数据
[{"idcomment":1,"isFlagged":false,"isDeleted":false,"isApproved":true,"createdAt":"2015-11-22T12:39:33Z","numReports":0,"isEdited":false,"message":"xcvvzvc","isSpam":false,"isHighlighted":false,"ip_address":"","is_public":true,"tree_path":"0000000001","tone":"Neutral","forum":1,"parent":null,"topic":1,"last_child":null,"user":1}][{"idcomment":1,"isFlagged":false,"isDeleted":false,"isApproved":true,"createdAt":"2015-11-22T12:39:33Z","numReports":0,"isEdited":false,"message":"xcvvzvc","isSpam":false,"isHighlighted":false,"ip_address":"","is_public":true,"tree_path":"0000000001","tone":"Neutral","forum":1,"parent":null,"topic":1,"last_child":null,"user":1}]
我的问题:我如何使用这个 json 请求数据并做一些验证,比如评论是否属于正确的主题。
我找不到任何完成的示例。所以我想通过使用类似这样的东西在 Flask 中是可能的。
mod.route("/create/", methods=["POST"])
def create():
json = getJson(request)
check_required(json, ['date', 'thread', 'message', 'user', 'forum'])
uid = id_by_email(json['user'])
fid = id_by_sname(json['forum'])
if uid < 0 or fid < 0:
return send_resp(json)
if 'parent' in json:
parent = json['parent']
else:
parent = None
json['parent'] = None
if 'isApproved' in json:
approved = json['isApproved']
else:
approved = 0
json['isApproved'] = 0
if 'isHighlighted' in json:
highlighted = json['isHighlighted']
else:
highlighted = 0
json['isHighlighted'] = 0
if 'isEdited' in json:
edited = json['isEdited']
else:
edited = 0
json['isEdited'] = 0
if 'isSpam' in json:
spam = json['isSpam']
else:
spam = 0
json['isSpam'] = 0
if 'isDeleted' in json:
deleted = json['isDeleted']
else:
deleted = 0
json['isDeleted'] = 0
db.insert("""INSERT INTO posts (date,thread_id,message,user_id,forum_id,parent,approved,highlighted,edited,spam,deleted)
values (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)""", (
json['date'], json['thread'], json['message'], uid, fid, parent, approved, highlighted, edited, spam, deleted))
pid = db.query("SELECT LAST_INSERT_ID() as id")[0]['id']
json['id'] = pid
return send_resp(json)
在 django-rest-framework 中有什么替代方法。
我是新手,所以请用简单的语言解释一下。我不需要任何代码,只是搜索如何使用我到达服务器的 json 请求。
文档我看了好几遍,不费吹灰之力
免责声明:我也将通过django-rest-framework code 进行处理
【问题讨论】:
-
django rest 框架有一个非常详尽的文档,其中包括a detailed tutorial 和完全涵盖您想要的工作示例。你读了吗?
-
@spectras 是的。几次
标签: python json django rest django-rest-framework