Layui上传图片 带接口
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上传图片 带接口的更多相关文章
- Thinkphp5+Layui上传图片
ThinkPHP是一个免费开源的,快速.简单的面向对象的轻量级PHP开发框架,是为了敏捷WEB应用开发和简化企业应用开发而诞生的.ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能 ...
- 上传头像,layui上传图片
layui上传与bootstrap上传相似,只是不需要下插件, layui自带的已够用 先看一下前台界面,这里是用到的上传头像 先点击开始上传,头像上传至服务器中, 返回json添加至form表单中, ...
- Layui 上传图片到磁盘上 + Tomcat 配置虚拟路径
Layui 上传图片到磁盘上 + Tomcat 配置虚拟路径 Tomcat 配置虚拟路径 找到 eclipse 中 tomcat 下面的 server.xml 文件,在 Host 标签里面添加 < ...
- layui上传图片接口
mvc中 前台调用接口 url:"../upload/uploadfiles/" 然后开始接口 代码: string a = ""; try { HttpFil ...
- 项目二(业务GO)——跨域上传图片(请求接口)
之前,就听过“跨域上传”图片的问题,只是疏于研究,也就一再搁置,直至今天再次遇见这个不能避免的“坑”,才不得不思考一下,怎么“跨域上传”图片或者文件? 问题来源: 何为“跨域”? ——就是给你一个接口 ...
- thinkphp结合layui上传图片
简单示例: <script type="text/javascript"> layui.use(['form', 'layedit','element', 'layda ...
- 给 layui upload 带每个文件的进度条, .net 后台代码
1.upload.js 扩展 功能利用ajax的xhr属性实现该功能修改过modules中的upload.js文件功能具体实现:在js文件中添加监听函数 //创建监听函数 var xhrOnProgr ...
- layui 上传图片 实现过程
layui.user一个页面只能有一个,写多了会实现js效果 上传图片官方文档有很多功能,但是演示的代码只是一个一个功能演示,如果要综合起来js代码不是简单的拼凑,需要放在指定位置,比如下面的限制文件 ...
- 轻量级Web API实现,带接口界面的Jayrock JsonRPC接口组件升级版
升级功能如下: 1.增加模块名称.输入参数.输出参数注释 2.增加Sign验证.输入数据解密.输出数据解密重写方法 3.增加集成Demo规范 4.增加模块分类.接口快速定位.接口调用说明.接口输入输出 ...
随机推荐
- STARTTLS is required but host does not support STARTTLS
Spring boot 邮件系统的错误,需要修改配置的文件yml.如果是企业邮箱的话就需要进行这个配置: spring: mail: host: mail.ccds.com username: inf ...
- Linux 根据PID找到相应应用程序的运行目录
1.找到运行程序的PID # ps aux | grep redis root pts/ S+ : : grep redis root ? Ssl Aug30 : redis-server *: # ...
- OpenCV2.4.10 + VS2010开发环境配置
原文转载自:qinyang8513 一.开发环境 1.操作系统:Windows 7(64位) 2.编程环境:Microsoft Visual Studio 2010 3.OpenCV版本:2.4.10 ...
- 在Word中插入Excel对象
using Word = NetOffice.WordApi; Word.Document doc = this._wordApplication.Documents.Add(@"C:\Us ...
- VS2015 类模板保存位置
如果安装在C盘,则是如下位置: C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\ItemTemplates\CSharp ...
- 13.翻译系列:Code-First方式配置多对多关系【EF 6 Code-First系列】
原文链接:https://www.entityframeworktutorial.net/code-first/configure-many-to-many-relationship-in-code- ...
- RunC容器逃逸漏洞席卷业界,网易云如何做到实力修复?
近日,业界爆出的runC容器越权逃逸漏洞CVE-2019-5736,席卷了整个基于runC的容器云领域,大量云计算厂商和采用容器云的企业受到影响.网易云方面透露,经过技术团队的紧急应对,网易云上的容器 ...
- 3.html基础标签:表格
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 深圳scala-meetup-20180902(3)- Using heterogeneous Monads in for-comprehension with Monad Transformer
scala中的Option类型是个很好用的数据结构,用None来替代java的null可以大大降低代码的复杂性,它还是一个更容易解释的状态表达形式,比如在读取数据时我们用Some(Row)来代表读取的 ...
- Android 和 iOS 实现录屏推流的方案整理
一.录屏推流实现的步骤 1. 采集数据 主要是采集屏幕获得视频数据,采集麦克风获得音频数据,如果可以实现的话,我们还可以采集一些应用内置的音频数据. 2. 数据格式转换 主要是将获取到的视频和音频转换 ...