def post(self):
args = self.parser.parse_args()
if not args.file:
abort(400, message={'file': 'parameter is required'})
if (args.xres is None) != (args.yres is None):
a, b = ('xres', 'yres') if args.yres is None else ('yres', 'xres')
abort(400, message={a: "can not stand alone without {} being set".format(b)})
if not args.name:
args.name = os.path.basename(os.path.splitext(args.file.filename)[0])
inputdim = (args.xres, args.yres) if args.xres else None
svgdata = args.file.read()
try:
data = convert(io.BytesIO(svgdata), inputdim=inputdim, name=args.name)
data = json.dumps(data, indent=2, sort_keys=True)
except Exception as exc:
abort(400, message={'file': str(exc)})
# Save the shape.
dirname = storage_dir()
if not os.path.isdir(dirname):
os.makedirs(dirname)
basename = secure_filename(datetime.now().strftime('%Y%m%d%H%M%S_' + args.name))
filename = os.path.join(dirname, basename)
with open(filename + '.svg', 'wb') as fp:
fp.write(svgdata)
with open(filename + '.json', 'w') as fp:
fp.write(data)
return {'status': 'ok', 'name': args.name, 'id': basename}
api.py 文件源码
python
阅读 22
收藏 0
点赞 0
评论 0
评论列表
文章目录