layui.use('upload', function () {
var upload = layui.upload; upload.render({
elem: '#LAY_avatarUpload'
, url: setter.apiDomain + '/api/WxPay/UploadFileByStream_Head'
, choose: function (obj) {
//将每次选择的文件追加到文件队列
var files = obj.pushFile(); //预读本地文件,如果是多文件,则会遍历。(不支持ie8/9)
obj.preview(function (index, file, result) {
console.log(index); //得到文件索引
console.log(file); //得到文件对象
console.log(result); //得到文件base64编码,比如图片 //obj.resetFile(index, file, '123.jpg'); //重命名文件名,layui 2.3.0 开始新增 //这里还可以做一些 append 文件列表 DOM 的操作 //obj.upload(index, file); //对上传失败的单个文件重新上传,一般在某个事件中使用
//delete files[index]; //删除列表中对应的文件,一般在某个事件中使用
}); }
, done: function (index, res) {
//上传完毕回调
if (index.Data.Url != "") {
var url = index.Data.Url;
$(".UserHeadImgUrl").attr('src', setter.apiDomain + url);
}
var UserHeadImgUrl = $('.UserHeadImgUrl').attr("src");
var url = '/api/Userinformation/EditImg'; ----这个主要就是更改字段,就没粘上来
var parment = {
UserHeadImgUrl: UserHeadImgUrl
}
callpack = function ()
{ }
admin.ajax(url, parment, callpack)
}
, error: function (index) {
//请求异常回调
}
});
}) ------------接口 UploadFileByStream_Head
public ResultInfo<UploadFileResponseModel> UploadFileByStream_Head()
{
var info = new ResultInfo<UploadFileResponseModel>();
try
{
#region 校验数据 if (!Request.Content.IsMimeMultipartContent())
{
info.Result = false;
info.StatusCode = (int)StatusCodeEnum.HttpRequestError;
info.State = StatusCodeEnum.HttpRequestError.ToString();
info.Msg = "不是有效的上传方式"; return info;
} if (HttpContext.Current.Request.Files.Count <= )
{
info.Result = false;
info.StatusCode = (int)StatusCodeEnum.HttpRequestError;
info.State = StatusCodeEnum.HttpRequestError.ToString();
info.Msg = "没有上传文件"; return info;
}
#endregion var resInfo = new UploadFileResponseModel();
HttpPostedFile file = HttpContext.Current.Request.Files[];
var ext = Path.GetExtension(file.FileName);
var fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + "_" + Funcs.GetRandom(, ) + ext; var filesName = DateTime.Now.ToString("yyyyMMddHH");
var url = "/Upload/Consignor/Img/" + filesName + "/" + fileName;
var path = HttpContext.Current.Server.MapPath("/Upload/Consignor/Img/" + filesName + "/");
Directory.CreateDirectory(path);
var fullFileName = path + fileName;
file.SaveAs(fullFileName); //返回数据
resInfo.FileName = fileName;
resInfo.ImagesType = "接口上传Stream";
resInfo.LocalPath = file.FileName;
resInfo.Url = url;
info.Result = true;
info.StatusCode = (int)StatusCodeEnum.Success;
info.State = StatusCodeEnum.Success.ToString();
info.Data = resInfo;
info.Msg = "上传成功"; return info;
}
catch (Exception ex)
{
string msg = "出现异常:" + ex.Message;
info.Result = false;
info.StatusCode = (int)StatusCodeEnum.Error;
info.State = StatusCodeEnum.Error.ToString();
info.Msg = msg;
return info;
}
};

Layui上传图片 带接口的更多相关文章

  1. Thinkphp5+Layui上传图片

    ThinkPHP是一个免费开源的,快速.简单的面向对象的轻量级PHP开发框架,是为了敏捷WEB应用开发和简化企业应用开发而诞生的.ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能 ...

  2. 上传头像,layui上传图片

    layui上传与bootstrap上传相似,只是不需要下插件, layui自带的已够用 先看一下前台界面,这里是用到的上传头像 先点击开始上传,头像上传至服务器中, 返回json添加至form表单中, ...

  3. Layui 上传图片到磁盘上 + Tomcat 配置虚拟路径

    Layui 上传图片到磁盘上 + Tomcat 配置虚拟路径 Tomcat 配置虚拟路径 找到 eclipse 中 tomcat 下面的 server.xml 文件,在 Host 标签里面添加 < ...

  4. layui上传图片接口

    mvc中 前台调用接口 url:"../upload/uploadfiles/" 然后开始接口 代码: string a = ""; try { HttpFil ...

  5. 项目二(业务GO)——跨域上传图片(请求接口)

    之前,就听过“跨域上传”图片的问题,只是疏于研究,也就一再搁置,直至今天再次遇见这个不能避免的“坑”,才不得不思考一下,怎么“跨域上传”图片或者文件? 问题来源: 何为“跨域”? ——就是给你一个接口 ...

  6. thinkphp结合layui上传图片

    简单示例: <script type="text/javascript"> layui.use(['form', 'layedit','element', 'layda ...

  7. 给 layui upload 带每个文件的进度条, .net 后台代码

    1.upload.js 扩展 功能利用ajax的xhr属性实现该功能修改过modules中的upload.js文件功能具体实现:在js文件中添加监听函数 //创建监听函数 var xhrOnProgr ...

  8. layui 上传图片 实现过程

    layui.user一个页面只能有一个,写多了会实现js效果 上传图片官方文档有很多功能,但是演示的代码只是一个一个功能演示,如果要综合起来js代码不是简单的拼凑,需要放在指定位置,比如下面的限制文件 ...

  9. 轻量级Web API实现,带接口界面的Jayrock JsonRPC接口组件升级版

    升级功能如下: 1.增加模块名称.输入参数.输出参数注释 2.增加Sign验证.输入数据解密.输出数据解密重写方法 3.增加集成Demo规范 4.增加模块分类.接口快速定位.接口调用说明.接口输入输出 ...

随机推荐

  1. Python11/26--mysql之视图/触发器/事务/存储过程

    视图: 1.什么是视图 视图就是通过查询得到一张虚拟表,然后保存下来,下次用的时候直接使用即可 2.为什么用视图 如果要频繁使用一张虚拟表,可以不用重复查询 3.如何用视图 select * from ...

  2. 第34章:MongoDB-索引--用户管理

    ①用户管理 在MongoDB里面默认情况下只要是进行连接都可以不使用用户名与密码,因为要想让其起作用,则必须具备以下两个条件: ·条件一:服务器启动的时候打开授权认证: ·条件二:需要配置用户名和密码 ...

  3. 【python接口自动化测试教程】00---00章节就代表开篇吧

    今天突然想写个接口测试教程,由于本人是初级的比小白稍微好那么一丢丢,所以不知道能不能坚持下来 写的不对的地方还请大咖指教 先去忙自己的工作了,忙完了回来开始写第一章吧 或者先写个大纲,要不然写的章节会 ...

  4. 关于HttpClient,HttpURLConnection,OkHttp的用法

    1 HttpClient入门实例 1.1发送get请求 /** * HttpClient发送get请求 * @param url 请求地址 * @return * @throws IOExceptio ...

  5. css3简单旋转

    <!DOCTYPE html><html><head> <meta charset="utf-8"> <title>&l ...

  6. shell 命令 if elif else fi 用法

    #! /bin/bash if Iam; then echo "it worked two" else ls echo "I am in the else" f ...

  7. MySQL基础--字符函数

    1.UPPER和UCASE返回字符串str,根据当前字符集映射(缺省是ISO-8859-1 Latin1)把所有的字符改变成大写.该函数对多字节是可靠的. 2.LOWER和LCASE返回字符串str, ...

  8. c# 遍历所有安装程序 获取所有已经安装的程序

    /// <summary> /// 获取所有已经安装的程序 /// </summary> /// <param name="reg"></ ...

  9. Javascript模式小记(一)

    js总是可以在不知不觉中地创建了全局变量,其原因在于JavaScript的两个特性. 1.JavaScript可直接使用变量,甚至无需声明: 2.JavaScript有个暗示全局变量的概念,即任何变量 ...

  10. USB插入电脑的硬件检测和枚举流程

    USB协议定义了设备的6种状态,仅在枚举过程种,设备就经历了4个状态的迁移:上电状态(Powered),默认状态(Default),地址状态(Address)和配置状态(Configured)(其他两 ...