Section Menu:  

图片上传接口

  • 发布时间: 2020-07-17 11:10
  •    阅读: 4602   

参数

       ● action [str] : "upload"不可更改
       ● file [] : 图片数据
       ● dir [str] : 图片上传的位置,对应upload文件夹下相应模块
       ● filename [str] : 图片上传命名规则,没有则按年月日


var reader = new FileReader();
var formData = new FormData();
reader.readAsDataURL(file);
reader.onloadend = function (even) {
    formData.append("action", "upload"); // 必须项,不可修改
    // 图片数据'file'为必须的命名不可更改,第二个参数为图片数据
    formData.append("file", file);  // 添加自定义属性(name)
    // 图片存放路径,第一个参数'dir'不可更改,第二个为upload文件夹下的文件夹名称,没有的话自动创建
    formData.append("dir", "vote_sys");
    // 图片保存名称,可有,没有则按年月日命名
    // formData.append("filename", "my_file_name");
    $.ajax({
        type: 'POST', // 请求方式
        url: '/api/admin_process', // 必须的请求路径
        data: formData, // 参数
        dataType: 'json', // 数据类型
        success: function (data) {  // 请求成功后的回调函
            if (data.state == "FAILURE") {
                //  失败打印错误信息
                layer.msg(data.msg, { time: 1000 });
            } else {
                layer.msg(data.msg, { time: 1000 });
            }
        },
        error: function () { // 请求失败后的回调函数
            layer.msg('上传失败', { time: 1000 });
        }
    })
}

成功之后返回图片的url等信息
{'state': 'FAILURE', 'msg': ''}  # 失败时返回 msg 错误消息
# 成功时返回url/新的文件-名/文件大小M/文件类型后缀
{'state': 'SUCCESS', 'url': '/upload/product/category/201909/190902152940.png', 'filename': '190902152940.png', 'size': 0.07, 'type': '.png', 'loginid': ''}

适应版本

v1.0.1