我正在使用 Flask 构建一个 REST API,它将照片添加到数据库中。数据库抽象为 PhotoModel 类。API 接收 JSON 格式的 HTTP POST,其中包含 bin 字符串中的图片和名称,所有其他参数都是可选的。
如果发布的 JSON 中不存在某些参数,如何构造“照片”对象?在数据库模型(PhotoModel)上,我只指定了两个强制性项目,因此只考虑 JSON 中存在的参数的逻辑应该在下面的函数中。
def add_photo():
"""Add photo to database"""
if request.method == 'POST' and request.headers['Content-Type'] == 'application/json':
photo = PhotoModel(
name = request.json['name'],
device_version = request.json['device_version'],
date = request.json['date'],
picture = request.json['picture'],
comment = request.json['comment']
)
try:
photo.put()
return "200"
except CapabilityDisabledError:
return "500 DB read-only"
else:
return "415 Unsupported Media Type"
我不知道该怎么做,任何指针都会有所帮助