server.py 文件源码

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

项目:micropayment-storage 作者: mitchoneill 项目源码 文件源码
def files_put(path):
    """
    write(path, data, offset) -> PUT /files/<path>
        {"data": "<base64 str>", "offset": <offset int>}

        200     <bytes written int>
        404     File not found.
    """
    path = flask.safe_join(app.config['serve_dir'], path)

    payload = flask.request.json

    if 'data' not in payload:
        return 'Missing data.', 400
    elif 'offset' not in payload:
        return 'Missing offset.', 400

    data = base64.b64decode(payload['data'])
    offset = int(payload['offset'])

    # Open, seek, write, close
    try:
        fd = os.open(path, os.O_WRONLY)
        os.lseek(fd, offset, os.SEEK_SET)
        n = os.write(fd, data)
        os.close(fd)
    except FileNotFoundError:
        return 'File not found.', 404

    return flask.jsonify({"count": n})
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号