Django 验证简单视图的JSON

Django 验证简单视图的JSON,django,django-views,Django,Django Views,我有一个简单的Django web应用程序,用于记录个人开支。我已经开始写一个新的视图,它将创建一个webhook来接收来自我的银行Monzo的交易。因此,每当我的帐户上有新的事务时,Monzo都会向我指定的URL发送一个包含详细信息的JSON。我的应用程序将保存此交易 由于这就是所有发生的事情,只有一个webhook,我决定不使用Django REST框架,只创建一个从银行接收JSON并保存事务的视图 银行将每笔交易重新发送两次。当交易第一次进入账户时,通常是第二次,一旦交易结算(完成)。因此

我有一个简单的Django web应用程序,用于记录个人开支。我已经开始写一个新的视图,它将创建一个webhook来接收来自我的银行Monzo的交易。因此,每当我的帐户上有新的事务时,Monzo都会向我指定的URL发送一个包含详细信息的JSON。我的应用程序将保存此交易

由于这就是所有发生的事情,只有一个webhook,我决定不使用Django REST框架,只创建一个从银行接收JSON并保存事务的视图

银行将每笔交易重新发送两次。当交易第一次进入账户时,通常是第二次,一旦交易结算(完成)。因此,我的视图将检查事务是否已经存在,然后创建新记录或更新现有记录

到目前为止,我只编写了几行代码,并确认JSON已收到,并且可以在视图中访问

我的问题是关于验证。我应该做什么样的验证来确保JSON不包含任何危险的内容,并且对于我的视图来说是安全的

银行将发送到我的webhook的交易示例

{
“类型”:“transaction.created”,
“数据”:{
“账户id”:“acc_00008gju41AHyfLUzBUk8A”,
“金额”:-350,
“已创建”:“2015-09-04T14:28:40Z”,
“货币”:“英镑”,
“说明”:“臭氧咖啡烘焙器”,
“id”:“tx_00008zjky19HyFLAzlUk7t”,
“类别”:“外出就餐”,
“is_load”:false,
“已结算”:“2015-09-05T14:28:40Z”,
“商人”:{
“地址”:{
“地址”:“南门路98号”,
“城市”:“伦敦”,
“国家”:“GB”,
“纬度”:51.54151,
“经度”:-0.08482400000002599,
“邮政编码”:“N1 3JD”,
“地区”:“大伦敦”
},
“已创建”:“2015-08-22T12:20:18Z”,
“组id”:“grp\U 00008ZICPBOAAR7TTP3SV”,
“id”:“merch_00008zIcpbAKe8shBxXUtl”,
“徽标”:https://pbs.twimg.com/profile_images/527043602623389696/68_SgUWJ.jpeg",

“emoji”:“为什么不使用Django REST框架?有了它,您可以在Serializer中验证json。实际上,您应该使用ModelSerializer。它与ModelForm类似,只是它将json作为数据而不是
请求。POST
querydict。因此它可以验证您的数据(就像表单的clean()方法,它有一个
validate
method)