api.py 文件源码

python
阅读 22 收藏 0 点赞 0 评论 0

项目:houdini-nodeshape-converter 作者: NiklasRosenstein 项目源码 文件源码
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}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号