def annotation_submit():
"""
To POST data to this endpoint:
$ curl -H "Content-type: application/json" \
-X POST localhost:8080/api/v0.1/annotation/submit \
-d '{"message":"Hello Data"}'
"""
if request.headers['Content-Type'] == 'application/json':
app.logger.info("Received Annotation:\n{}"
.format(json.dumps(request.json, indent=2)))
# Do a thing with the annotation
# Return some progress stats?
data = json.dumps(dict(message='Success!'))
status = 200
db = pybackend.database.Database(
project=app.config['cloud']['project'],
**app.config['cloud']['database'])
gid = str(pybackend.utils.uuid(json.dumps(request.json)))
uri = pybackend.urilib.join('annotation', gid)
record = pybackend.models.AnnotationResponse(
created=str(datetime.datetime.now()),
response=request.json,
user_id='anonymous')
db.put(uri, record.flatten())
else:
status = 400
data = json.dumps(dict(message='Invalid Content-Type; '
'only accepts application/json'))
resp = Response(
data, status=status, mimetype=mimetypes.types_map[".json"])
resp.headers['Link'] = SOURCE
return resp
评论列表
文章目录