关于Web Uploader IE9上传文件的问题? 5C

这是我的代码:

 var uploader = WebUploader.create({

        // swf文件路径
        swf: '/zg-fx/layui/ux/js/webuploader/Uploader.swf',

        // 文件接收服务端。
        server: uploadPath+"/uploadFile",

        // 选择文件的按钮。可选。
        // 内部根据当前运行是创建,可能是input元素,也可能是flash.
        pick: '#picker',

        // 不压缩image, 默认如果是jpeg,文件上传前会压缩一把再上传!
        resize: false,
        headers: {'token': token},
        auto: true
    });

在谷歌ie10上都可以
ie10:
图片说明

会正常发送一个请求,
ie9就不行了:
图片说明
没有我uploadFile的请求,倒是不知道哪来的一个.xml的请求。
一开始我以为是swf文件没有引入进来, 但是看了资源后发现是有的。
不知为什么。
望各位解答,
谢谢!

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Web Uploader 初始化为什么报
Web Uploader 初始化为什么报me.connectRuntime is not a function错误?
关于uploader图片上传的问题
fileSizeLimit : 1*1024*1024, 我对上传图片大小进行了设置 uploader.on('error', function(handler) { if(handler=="Q_EXCEED_NUM_LIMIT"){ layer.msg("超出最大张数"); } if(handler=="F_DUPLICATE"){ layer.msg("文件重复"); } if(handler=="Q_EXCEED_SIZE_LIMIT"){ layer.msg("文件不能超过1M"); } stop([clearQueue], [gotoEnd]) uploader.reset(); }); 为什么第一次上传提示"文件不能超过1M" 第二次就不提示了?
ssi_uploader上传图片插件传多参的一个问题
我想请教你一个关于 ssi_uploader 传多参的问题。 data中的变量参数传后台是空,参数写成固定字符串就能传过去,求解决 data中的变量是用document.getElementById("name").value获取的
HBuilder中 uploader上传图片
var wt = plus.nativeUI.showWaiting(); var task = plus.uploader.createUpload("servlet/Recognition", { method: "POST" }, function(t, status) { if(status == 200) { console.log("上传成功:" + t.responseText); wt.close(); } else { console.log("上传失败:" + status); wt.close(); } } ); task.start(); 求助各位,uploader上传图片,返回上传失败 500,是什么原因呀??? 然后上传至servlet,我怎么用代码接收保存呀,推荐的代码示例???
关于ssi uploader控件的介绍以及详细说明
在网上看到这个上传插件,还不错,自己琢磨了一些时间, 上传没有问题了,就是内部较深的地方不是很懂! 例如上传成功后返回什么值得格式要什么样子, 测试了返回boolean,不管用!如果有大神知道的还望多多指出!
dojo.form.uploader上传文件,后台要怎么获得文件流
如题,后台要怎么获得文件流。普通的form表单提交只要<input />中加个name ,后端代码只要写个和name相同的File类型参数接收就好了。但是dojo的获取不到。我不会dojo,js也不怎么写。知道的求告知,感激不尽
HBuilder plus.uploader.createUpload 上传图片
task.addFile();里面的参数代表什么意思呀??? 这样传图片到后台,用servlet接收代码应该怎么去写呢,各位帮帮忙找找示例的代码,,, var wt = plus.nativeUI.showWaiting(); var task = plus.uploader.createUpload("servlet/Recognition", {method: "POST" }, function(t, status) { if(status == 200) { console.log("上传成功:" + t.responseText); wt.close(); } else { console.log("上传失败:" + status); wt.close(); } } ); task.addFile(pictureUrl, {key: name}); task.start();
使用angular上传,发现在IE9下不兼容
![图片说明](https://img-ask.csdn.net/upload/201609/02/1472805988_828864.jpg) 选中要上传的文件后,在输入框中没有显示出上传的文件名;可以看到输入框中还是空白的。 <input type="file" class="form-control" nv-file-select="" name="file" data-ng-click="clearItems();" id="certFile" data-uploader="uploader" /> 把nv-file-select=""去掉之后才可以显示出选中上传的文件,该怎么才能解决这个问题。
Web Uploader 初始化为什么报me.connectRuntime is not a function错误?
请教这是什么原因造成请教这是什么原因造成请教这是什么原因造成
jQuery ssi-uploader 有谁用过?
jQuery ssi-uploader 多文件后台怎么接收多文件?
使用webupload,IE9频繁出现崩溃
做了个javaWeb项目,上传图片用的是webupload,但是用IE9,页面频繁崩溃! ```/* webuploader END */ var $wrap = $('#uploader'), flashVersion = (function () { var version; try { version = navigator.plugins['Shockwave Flash']; version = version.description; } catch (ex) { try { version = new ActiveXObject('ShockwaveFlash.ShockwaveFlash') .GetVariable('$version'); } catch (ex2) { version = '0.0'; } } version = version.match(/\d+/g); return parseFloat(version[0] + '.' + version[1], 10); })(); if (!WebUploader.Uploader.support('flash') && WebUploader.browser.ie < 10) { // flash 安装了但是版本过低。 if (!flashVersion || (flashVersion < 11.5)) { //layer.alert("您当前浏览器flash插件版本较低,可能无法使用系统中功能,<a href='https://www.flash.cn/cdm/latest/flashplayerax_install_cn.exe'>点击升級</a>"); layer.confirm('您当前浏览器沒有flash,可能无法使用系统中功能,前往升级?', { btn : [ '确定', '取消' ]//按钮 }, function(index) { layer.close(index); //此处请求后台程序,下方是成功后的前台处理…… // var index = layer.load(0,{shade: [0.7, '#393D49']}, {shadeClose: true}); //0代表加载的风格,支持0-2 //window.location.href="www.hao123.com"; window.open('https://www.flash.cn/cdm/latest/flashplayerax_install_cn.exe'); }); // 压根就没有安转。 } else { //layer.alert("您当前浏览器沒有flash,可能无法使用系统中功能,<a href='https://www.flash.cn/cdm/latest/flashplayerax_install_cn.exe'>点击安裝</a>"); layer.confirm('您当前浏览器沒有flash,可能无法使用系统中功能,前往安装?', { btn : [ '确定', '取消' ]//按钮 }, function(index) { layer.close(index); //此处请求后台程序,下方是成功后的前台处理…… // var index = layer.load(0,{shade: [0.7, '#393D49']}, {shadeClose: true}); //0代表加载的风格,支持0-2 //window.location.href="www.hao123.com"; window.open('https://www.flash.cn/cdm/latest/flashplayerax_install_cn.exe'); }); } // return; } else if (!WebUploader.Uploader.support()) { layer.msg('Web Uploader 不支持您的浏览器!',{icon:6}); //return; } //var flag =true; var uploader = WebUploader.create({ auto: true, // swf文件路径 swf: '<%=basePath %>/static/webupload/Uploader.swf', // 文件接收服务端。 server:'<%=basePath %>/main/webuploader', // 选择文件的按钮。可选。 // 内部根据当前运行是创建,可能是input元素,也可能是flash. pick: '#picker', fileVal:'file', // 不压缩image, 默认如果是jpeg,文件上传前会压缩一把再上传! resize: false, formData: { folderId: "<%=requestBean.getFolderId()%>" }, accept: { title: 'Files', extensions: 'gif,jpg,jpeg,bmp,png,pdf,doc,docx,txt,xls,xlsx,ppt,pptx,zip,mp3,mp4,text,csv', mimeTypes: 'image/*,text/*' //word +',application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document' //excel +',application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' //ppt +',application/vnd.ms-powerpoint,application/vnd.openxmlformats-officedocument.presentationml.presentation' +',application/pdf' +',application/zip' +',application/csv' +',.csv' }, duplicate :true, //chunked: true, //分片处理 //chunkSize: 5 * 1024 * 1024, //每片5M chunkRetry:false,//如果失败,则不重试 //duplicate:false,//是否可重复选择同一文件 //fileSingleSizeLimit: 10*1024*1024,//限制大小10M,单文件 //fileSizeLimit: allMaxSize*1024*1024,//限制大小10M,所有被选文件,超出选择不上 fileNumLimit:20 }); // 当有文件被添加进队列的时候 uploader.on( 'fileQueued', function( file ) { var $list = $("#webuploaderList"); $list.append( '<div id="' + file.id + '" class="item">' + '<h4 class="info">' + file.name + '</h4>' + '<p class="state">等待上传...</p>' + '</div>' ); }); // 文件上传过程中创建进度条实时显示。 uploader.on( 'uploadProgress', function( file, percentage ) { $("#uploadfileQueue").css("display","block"); var $li = $( '#'+file.id ), $percent = $li.find('.progress .progress-bar'); // 避免重复创建 if ( !$percent.length ) { $percent = $('<div class="progress progress-striped active" style="width:300px; height:10px; border:2px solid #09F;">' + '<div class="progress-bar" role="progressbar" style="width: 0%;height:100%; background-color:#09F; text-align:center; line-height:10px; font-size:10px;">' + '</div>' + '</div>').appendTo( $li ).find('.progress-bar'); } $li.find('p.state').text('上传中...'); $percent.html( Math.round(percentage * 100) +"%" ); $percent.css( 'width', percentage * 100 + '%' ); }); uploader.on('uploadSuccess', function (file,response) { if(response.ISOK=='N'){ layer.msg(response.message); $('#' + file.id).find('p.state').text('上传出错:'+response.message); } else{ $('#' + file.id).find('p.state').text('已上传'); if(response.newFid){ newFid = response.newFid; } } }); uploader.on('uploadError', function (file) { //layer.msg('上传出错!'+handler); $('#' + file.id).find('p.state').text('上传出错!'); }); // 完成上传完了,成功或者失败,先删除进度条。 uploader.on( 'uploadComplete', function(file ) { $( '#'+file.id ).find('.progress').remove(); }); //所有文件上传完成 uploader.on('uploadFinished',function(file){ var changeList; $.ajax( { url: '<%=basePath %>/userSession/changeListBySwfUpload', dataType: "json", async:false, cache:false, success: function(data, textStatus, jqXHR) { changeList=data; }, error: function(jqXHR, textStatus, errorThrown) { //console.log(errorThrown); } }); if(changeList == undefined){ return false; } var v_div=$("<div style='width:600px'>"); var v_table=$("<table id='fileuploadsinfo'>").css("width","500px").appendTo(v_div); var v_hred_tr=$("<tr>").css("width","500px").css("height","40px"); $("<th>").text("文件名").css("width","200px").css("height","40px").appendTo(v_hred_tr); $("<th>").text("备注").css("width","300px").css("height","40px").appendTo(v_hred_tr); v_hred_tr.appendTo(v_table); $.each(changeList,function(idx,v_sel){ var v_body_tr=$("<tr>").css("width","500px").css("height","40px").attr("cFid",v_sel.cFId); $("<td>").text(v_sel.file).css("width","200px").css("height","40px").appendTo(v_body_tr); var v_rmk=$("<input type='text' class='remark'>").css("width",'90%').css("height","99%"); $("<td>").css("width","300px").css("height","40px").appendTo(v_body_tr).append(v_rmk); v_body_tr.appendTo(v_table); /* var v_div=$("<div ><span style='display: none' ><input type='text' name='cFId' value='"++"'/></span><span style='width: 100px' ><input type='text' name='cFReName' readonly='readonly' value='"+v_sel.file+"'/></span><span style='width: 400px' ><input type='text' name='cFNote'/></span></div>"); v_div.appendTo(v_form); */ //changeList.splice(idx,1); //return true; }); layer.open({ type: 1, title:"", area: ["500px", "300px"], content:v_div.html(), closeBtn:1, btnAlign: 'c', scrollbar:true, btn:['确定','取消'], yes: function(index, layero){ var jsonArray=[]; var v_flag=false; $("#fileuploadsinfo").find('tr').not(':eq(0)').each(function(idx,itr){ var v_cFid=$(itr).attr("cFid"); var v_remark=$(itr).find('.remark').val(); if($.trim(v_remark).length<=20){ jsonArray.push({"fileInfo":v_cFid+'_'+v_remark}); }else{ layer.msg("备注输入有误,请输入20位以内的备注信息"); v_flag=true; return false; } }); //var str= JSON.stringify(jsonArray) if(v_flag){ return false; } $.ajax({ url: '<%=basePath %>/main/saveNote', type: 'post', dataType: 'json', data:{datas:jsonArray}, async:false, success: function (data) { uploader.reset(); //alert(33); uploader.destory(); if(data.flag=="Y"){ layer.closeAll(); layer.msg("上传成功",{icon:6},function(){ if(newFid){//如果新增了文件夹则刷新父级窗口 parent.location.reload(); }else{ window.location.reload(); } }); } }, error: function(XMLHttpRequest, textStatus, errorThrown) { } }); } , btn2: function(index, layero){ if(newFid){//如果新增了文件夹则刷新父级窗口 parent.location.reload(); }else{ window.location.reload(); } } }); }); /* webuploader END */ ``` 崩溃错误描述如下 : 问题签名: 问题事件名称: APPCRASH 应用程序名: iexplore.exe 应用程序版本: 9.0.8112.16421 应用程序时间戳: 4d76255d 故障模块名称: Flash32_32_0_0_207.ocx 故障模块版本: 32.0.0.207 故障模块时间戳: 5ceb04d1 异常代码: c0000005 异常偏移: 002d7e64 OS 版本: 6.1.7601.2.1.0 .256.48 区域设置 ID: 2052 其他信息 1: 2826 其他信息 2: 2826ae5788d1601e09d13cfdc228c271 其他信息 3: a6c4 其他信息 4: a6c4ac129c9c2b4af725e35cc1a77c20 联机阅读隐私声明: http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0804 如果无法获取联机隐私声明,请脱机阅读我们的隐私声明: C:\Windows\system32\zh-CN\erofflps.txt
关于jquery uploadify 界面在ie 8中显示出错的问题
网页上的上传按钮在ie 8 下显示很奇怪,而其他非ie内核的浏览器以及ie11都没有问题,请问一下是哪 里出问题了,是什么原因造成的呢? ![ie8中的显示](https://img-ask.csdn.net/upload/201508/27/1440639673_1330.png) ![其他浏览器正常显示](https://img-ask.csdn.net/upload/201508/27/1440639790_647967.png) ![ie8上的提示信息](https://img-ask.csdn.net/upload/201508/27/1440639848_535195.png) jquery代码 ``` $("#uploadify").uploadify({ 'uploader' : '<%=basePath%>images/uploadify.swf', 'script' : '<%=basePath%>user/fileUpload.action?userName=${user.name}', 'fileDataName' : 'fileDate', 'folder' : '/', 'queueID' : 'fileQueue', 'queueSizeLimit' : 6, 'multi' : true, 'auto' : false, 'sizeLimit' : 1024*1024*10, 'simUploadLimit' : 2, 'buttonImg' : '<%=basePath%>images/attach.png', 'height' : 20, 'width' : 50, 'cancelImg' : 'images/cancel.png', 'wmode' : 'transparent' , ``` ps.安装了flash,非flash的原因
使用webUpload上传图片时,怎么在uploader.upload();点击上传时传递参数去后台
使用webupload上传图片,设置的formdate参数是在页面加载时就执行过了, 需要传递的参数,还是空的,需要在点击uploader.upload()上传图片时传递参数 去后台,需要怎么实现。。。。。。。。急
java web项目整合一个图片上传webUploader
因为是初学者,所以想写个ssh的小项目,练练手, 在网上下了一个商城的后台模板,最近正在实现功能, 现在写到了,新增商品时的上传功能, 模板自带的上传是用的webUploader, 现在遇到的问题是图片上传的时候不知道怎么保存在服务器中, 代码如下: html: <div class="clearfix cl"> <label class="form-label col-2">图片上传:</label> <div class="formControls col-10"> <div class="uploader-list-container"> <div class="queueList"> <div id="dndArea" class="placeholder"> <div id="filePicker-2"></div> <p>或将照片拖到这里,单次最多可选300张</p> </div> </div> <div class="statusBar" style="display:none;"> <div class="progress"> <span class="text">0%</span> <span class="percentage"></span> </div> <div class="info"></div> <div class="btns"> <div id="filePicker2"></div> <div class="uploadBtn">开始上传</div> </div> </div> </div> </div> </div> js: $(function(){ $('.skin-minimal input').iCheck({ checkboxClass: 'icheckbox-blue', radioClass: 'iradio-blue', increaseArea: '20%' }); $list = $("#fileList"), $btn = $("#btn-star"), state = "pending", uploader; var uploader = WebUploader.create({ auto: true, swf: 'lib/webuploader/0.1.5/Uploader.swf', // 文件接收服务端。 server: 'fileUpload.action', // 选择文件的按钮。可选。 // 内部根据当前运行是创建,可能是input元素,也可能是flash. pick: '#filePicker', // 不压缩image, 默认如果是jpeg,文件上传前会压缩一把再上传! resize: false, // 只允许选择图片文件。 accept: { title: 'Images', extensions: 'gif,jpg,jpeg,bmp,png', mimeTypes: 'image/*' } }); }); 问题是, // 文件接收服务端。 server: 'fileUpload.action', 在网上查的这个属性是文件接收服务器端,如果我给一个Action,它会显示上传成功![图片说明](https://img-ask.csdn.net/upload/201706/25/1498386878_982619.png) 就算是上传成功,在服务器也找不到这个图片, 但是,原页面和网上搜到的一些例子都是 // 文件接收服务端。 server: 'http://webuploader.duapp.com/server/fileupload.php', 以php结尾的文件,这个是有什么问题,求解释 如果我修改成这个文件,就上传失败了, 这个属性值到底是给什么,还有,我怎么能获取到他的路径,文件名称,是在Action中定义file属性,get,set,获取他的值吗?
uploadify上传文件无法限制文件格式
``` $("#uploadify1").uploadify({ 'debug' : false, 'auto' : true, 'swf' : '<%=path%>/js/uploadify/uploadify.swf', 'uploader' : '<%=path%>/EClaimDoUpload.do',//后台处理的请求 'queueID' : 'display1',//与下面的id对应 //'sizeLimit': 2097152,//设置单个文件大小限制,单位为byte 'fileSizeLimit' : '3MB',//设置单个文件大小限制 'queueSizeLimit' : 30, //一个队列上传文件数限制 'removeCompleted': true, //完成时是否清除队列 默认true 'removeTimeout' : 1, //完成时清除队列显示秒数,默认3秒 'fileTypeDesc' : '支持格式:*.jpg;*.gif;*.png', 'fileTypeExts' : '*.jpg;*.gif;*.png', //控制可上传文件的扩展名,启用本项时需同时声明fileDesc 'formData' : { 'type' : 1 },//传输数据JSON格式 'multi' : true, 'buttonText' : '上传', 'width' : 50, 'height' : 20, //返回一个错误,选择文件的时候触发 'cancelImg' : '../js/uploadify/uploadify-cancel.png', 'onSelectError':function(file, errorCode, errorMsg){ debugger switch(errorCode) { case -100: alert("上传的文件数量已经超出系统限制的"+$('#uploadify1').uploadify('settings','queueSizeLimit')+"个文件!"); break; case -110: alert("图像大小超限,请调低像素后重新上传 "); break; case -120: alert("文件 ["+file.name+"] 大小异常!"); break; case -130: alert("文件 ["+file.name+"] 类型不正确!"); break; } }, ```
asp.net webuploader多图片上传并保存文件路径到数据库
![图片说明](https://img-ask.csdn.net/upload/201906/22/1561187942_114655.jpg) 要做一个滚动窗功能,使用webuploader插件 不知道在哪获取文件路径,保存到数据库里 上传的upload.js ``` (function( $ ){ // 当domReady的时候开始初始化 $(function() { var $wrap = $('.uploader-list-container'), // 图片容器 $queue = $( '<ul class="filelist"></ul>' ) .appendTo( $wrap.find( '.queueList' ) ), // 状态栏,包括进度和控制按钮 $statusBar = $wrap.find( '.statusBar' ), // 文件总体选择信息。 $info = $statusBar.find( '.info' ), // 上传按钮 $upload = $wrap.find( '.uploadBtn' ), // 没选择文件之前的内容。 $placeHolder = $wrap.find( '.placeholder' ), $progress = $statusBar.find( '.progress' ).hide(), // 添加的文件数量 fileCount = 0, // 添加的文件总大小 fileSize = 0, // 优化retina, 在retina下这个值是2 ratio = window.devicePixelRatio || 1, // 缩略图大小 thumbnailWidth = 110 * ratio, thumbnailHeight = 110 * ratio, // 可能有pedding, ready, uploading, confirm, done. state = 'pedding', // 所有文件的进度信息,key为file id percentages = {}, // 判断浏览器是否支持图片的base64 isSupportBase64 = ( function() { var data = new Image(); var support = true; data.onload = data.onerror = function() { if( this.width != 1 || this.height != 1 ) { support = false; } } data.src = "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw=="; return support; } )(), // 检测是否已经安装flash,检测flash的版本 flashVersion = ( function() { var version; try { version = navigator.plugins[ 'Shockwave Flash' ]; version = version.description; } catch ( ex ) { try { version = new ActiveXObject('ShockwaveFlash.ShockwaveFlash') .GetVariable('$version'); } catch ( ex2 ) { version = '0.0'; } } version = version.match( /\d+/g ); return parseFloat( version[ 0 ] + '.' + version[ 1 ], 10 ); } )(), supportTransition = (function(){ var s = document.createElement('p').style, r = 'transition' in s || 'WebkitTransition' in s || 'MozTransition' in s || 'msTransition' in s || 'OTransition' in s; s = null; return r; })(), // WebUploader实例 uploader; if ( !WebUploader.Uploader.support('flash') && WebUploader.browser.ie ) { // flash 安装了但是版本过低。 if (flashVersion) { (function(container) { window['expressinstallcallback'] = function( state ) { switch(state) { case 'Download.Cancelled': alert('您取消了更新!') break; case 'Download.Failed': alert('安装失败') break; default: alert('安装已成功,请刷新!'); break; } delete window['expressinstallcallback']; }; var swf = 'expressInstall.swf'; // insert flash object var html = '<object type="application/' + 'x-shockwave-flash" data="' + swf + '" '; if (WebUploader.browser.ie) { html += 'classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" '; } html += 'width="100%" height="100%" style="outline:0">' + '<param name="movie" value="' + swf + '" />' + '<param name="wmode" value="transparent" />' + '<param name="allowscriptaccess" value="always" />' + '</object>'; container.html(html); })($wrap); // 压根就没有安转。 } else { $wrap.html('<a href="http://www.adobe.com/go/getflashplayer" target="_blank" border="0"><img alt="get flash player" src="http://www.adobe.com/macromedia/style_guide/images/160x41_Get_Flash_Player.jpg" /></a>'); } return; } else if (!WebUploader.Uploader.support()) { alert( 'Web Uploader 不支持您的浏览器!'); return; } // 实例化 uploader = WebUploader.create({ pick: { id: '#filePicker-2', label: '点击选择图片' }, formData: { uid: 123 }, dnd: '#dndArea', paste: '#uploader', swf: '../Uploader.swf', chunked: false, chunkSize: 512 * 1024, server: './Ajax/UpLoad.ashx', // runtimeOrder: 'flash', accept: { title: 'Images', extensions: 'gif,jpg,jpeg,bmp,png', mimeTypes: 'image/*' }, // 禁掉全局的拖拽功能。这样不会出现图片拖进页面的时候,把图片打开。 disableGlobalDnd: true, fileNumLimit: 300, fileSizeLimit: 200 * 1024 * 1024, // 200 M fileSingleSizeLimit: 50 * 1024 * 1024 // 50 M }); // 拖拽时不接受 js, txt 文件。 uploader.on( 'dndAccept', function( items ) { var denied = false, len = items.length, i = 0, // 修改js类型 unAllowed = 'text/plain;application/javascript '; for ( ; i < len; i++ ) { // 如果在列表里面 if ( ~unAllowed.indexOf( items[ i ].type ) ) { denied = true; break; } } return !denied; }); uploader.on('dialogOpen', function() { console.log('here'); }); // uploader.on('filesQueued', function() { // uploader.sort(function( a, b ) { // if ( a.name < b.name ) // return -1; // if ( a.name > b.name ) // return 1; // return 0; // }); // }); // 添加“添加文件”的按钮, uploader.addButton({ id: '#filePicker2', label: '继续添加' }); uploader.on('ready', function() { window.uploader = uploader; }); // 当有文件添加进来时执行,负责view的创建 function addFile(file) { alert(file.name); var $li = $( '<li id="' + file.id + '">' + '<p class="title">' + file.name + '</p>' + '<p class="imgWrap"></p>'+ '<p class="progress"><span></span></p>' + '</li>' ), $btns = $('<div class="file-panel">' + '<span class="cancel">删除</span>' + '<span class="rotateRight">向右旋转</span>' + '<span class="rotateLeft">向左旋转</span></div>').appendTo( $li ), $prgress = $li.find('p.progress span'), $wrap = $li.find( 'p.imgWrap' ), $info = $('<p class="error"></p>'), showError = function( code ) { switch( code ) { case 'exceed_size': text = '文件大小超出'; break; case 'interrupt': text = '上传暂停'; break; default: text = '上传失败,请重试'; break; } $info.text( text ).appendTo( $li ); }; if ( file.getStatus() === 'invalid' ) { showError( file.statusText ); } else { // @todo lazyload $wrap.text( '预览中' ); uploader.makeThumb( file, function( error, src ) { var img; if ( error ) { $wrap.text( '不能预览' ); return; } if( isSupportBase64 ) { img = $('<img src="'+src+'">'); $wrap.empty().append( img ); } else { $.ajax('../server/preview.php', { method: 'POST', data: src, dataType:'json' }).done(function( response ) { if (response.result) { img = $('<img src="'+response.result+'">'); $wrap.empty().append( img ); } else { $wrap.text("预览出错"); } }); } }, thumbnailWidth, thumbnailHeight ); percentages[ file.id ] = [ file.size, 0 ]; file.rotation = 0; } file.on('statuschange', function( cur, prev ) { if ( prev === 'progress' ) { $prgress.hide().width(0); } else if ( prev === 'queued' ) { $li.off( 'mouseenter mouseleave' ); $btns.remove(); } // 成功 if ( cur === 'error' || cur === 'invalid' ) { console.log( file.statusText ); showError( file.statusText ); percentages[ file.id ][ 1 ] = 1; } else if ( cur === 'interrupt' ) { showError( 'interrupt' ); } else if ( cur === 'queued' ) { percentages[ file.id ][ 1 ] = 0; } else if ( cur === 'progress' ) { $info.remove(); $prgress.css('display', 'block'); } else if ( cur === 'complete' ) { $li.append( '<span class="success"></span>' ); } $li.removeClass( 'state-' + prev ).addClass( 'state-' + cur ); }); $li.on( 'mouseenter', function() { $btns.stop().animate({height: 30}); }); $li.on( 'mouseleave', function() { $btns.stop().animate({height: 0}); }); $btns.on( 'click', 'span', function() { var index = $(this).index(), deg; switch ( index ) { case 0: uploader.removeFile( file ); return; case 1: file.rotation += 90; break; case 2: file.rotation -= 90; break; } if ( supportTransition ) { deg = 'rotate(' + file.rotation + 'deg)'; $wrap.css({ '-webkit-transform': deg, '-mos-transform': deg, '-o-transform': deg, 'transform': deg }); } else { $wrap.css( 'filter', 'progid:DXImageTransform.Microsoft.BasicImage(rotation='+ (~~((file.rotation/90)%4 + 4)%4) +')'); // use jquery animate to rotation // $({ // rotation: rotation // }).animate({ // rotation: file.rotation // }, { // easing: 'linear', // step: function( now ) { // now = now * Math.PI / 180; // var cos = Math.cos( now ), // sin = Math.sin( now ); // $wrap.css( 'filter', "progid:DXImageTransform.Microsoft.Matrix(M11=" + cos + ",M12=" + (-sin) + ",M21=" + sin + ",M22=" + cos + ",SizingMethod='auto expand')"); // } // }); } }); $li.appendTo( $queue ); } // 负责view的销毁 function removeFile( file ) { var $li = $('#'+file.id); delete percentages[ file.id ]; updateTotalProgress(); $li.off().find('.file-panel').off().end().remove(); } function updateTotalProgress() { var loaded = 0, total = 0, spans = $progress.children(), percent; $.each( percentages, function( k, v ) { total += v[ 0 ]; loaded += v[ 0 ] * v[ 1 ]; } ); percent = total ? loaded / total : 0; spans.eq( 0 ).text( Math.round( percent * 100 ) + '%' ); spans.eq( 1 ).css( 'width', Math.round( percent * 100 ) + '%' ); updateStatus(); } function updateStatus() { var text = '', stats; if ( state === 'ready' ) { text = '选中' + fileCount + '张图片,共' + WebUploader.formatSize( fileSize ) + '。'; } else if ( state === 'confirm' ) { stats = uploader.getStats(); if ( stats.uploadFailNum ) { text = '已成功上传' + stats.successNum+ '张照片至XX相册,'+ stats.uploadFailNum + '张照片上传失败,<a class="retry" href="#">重新上传</a>失败图片或<a class="ignore" href="#">忽略</a>' } } else { stats = uploader.getStats(); text = '共' + fileCount + '张(' + WebUploader.formatSize( fileSize ) + '),已上传' + stats.successNum + '张'; if ( stats.uploadFailNum ) { text += ',失败' + stats.uploadFailNum + '张'; } } $info.html( text ); } function setState( val ) { var file, stats; if ( val === state ) { return; } $upload.removeClass( 'state-' + state ); $upload.addClass( 'state-' + val ); state = val; switch ( state ) { case 'pedding': $placeHolder.removeClass( 'element-invisible' ); $queue.hide(); $statusBar.addClass( 'element-invisible' ); uploader.refresh(); break; case 'ready': $placeHolder.addClass( 'element-invisible' ); $( '#filePicker2' ).removeClass( 'element-invisible'); $queue.show(); $statusBar.removeClass('element-invisible'); uploader.refresh(); break; case 'uploading': $( '#filePicker2' ).addClass( 'element-invisible' ); $progress.show(); $upload.text( '暂停上传' ); break; case 'paused': $progress.show(); $upload.text( '继续上传' ); break; case 'confirm': $progress.hide(); $( '#filePicker2' ).removeClass( 'element-invisible' ); $upload.text( '开始上传' ); stats = uploader.getStats(); if ( stats.successNum && !stats.uploadFailNum ) { setState( 'finish' ); return; } break; case 'finish': stats = uploader.getStats(); if ( stats.successNum ) { alert( '上传成功' ); } else { // 没有成功的图片,重设 state = 'done'; location.reload(); } break; } updateStatus(); } uploader.onUploadProgress = function( file, percentage ) { var $li = $('#'+file.id), $percent = $li.find('.progress span'); $percent.css( 'width', percentage * 100 + '%' ); percentages[ file.id ][ 1 ] = percentage; updateTotalProgress(); }; uploader.onFileQueued = function( file ) { fileCount++; fileSize += file.size; if ( fileCount === 1 ) { $placeHolder.addClass( 'element-invisible' ); $statusBar.show(); } addFile( file ); setState( 'ready' ); updateTotalProgress(); }; uploader.onFileDequeued = function( file ) { fileCount--; fileSize -= file.size; if ( !fileCount ) { setState( 'pedding' ); } removeFile( file ); updateTotalProgress(); }; uploader.on( 'all', function( type ) { var stats; switch( type ) { case 'uploadFinished': setState( 'confirm' ); break; case 'startUpload': setState( 'uploading' ); break; case 'stopUpload': setState( 'paused' ); break; } }); uploader.onError = function( code ) { alert( 'Eroor: ' + code ); }; $upload.on('click', function() { if ( $(this).hasClass( 'disabled' ) ) { return false; } if ( state === 'ready' ) { uploader.upload(); } else if ( state === 'paused' ) { uploader.upload(); } else if ( state === 'uploading' ) { uploader.stop(); } }); $info.on( 'click', '.retry', function() { uploader.retry(); } ); $info.on( 'click', '.ignore', function() { alert( 'todo' ); } ); $upload.addClass( 'state-' + state ); updateTotalProgress(); }); })( jQuery ); ``` ashx文件 ``` <%@ WebHandler Language="C#" Class="Handler" %> using System; using System.Web; using System.IO; using System.Text; public class Handler : IHttpHandler { public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; //指定字符集 context.Response.ContentEncoding = System.Text.Encoding.UTF8; if (context.Request["REQUEST_METHOD"] == "OPTIONS") { context.Response.End(); } SaveFile(); } /// <summary> /// 文件保存操作 /// </summary> /// <param name="basePath"></param> private void SaveFile(string basePath = "~/Upload/Images/") { var name = string.Empty; basePath = (basePath.IndexOf("~") > -1) ? System.Web.HttpContext.Current.Server.MapPath(basePath) : basePath; // basePath = FileHelper.GetUploadPath(); HttpFileCollection files = System.Web.HttpContext.Current.Request.Files; //如果目录不存在,则创建目录 if (!Directory.Exists(basePath)) { Directory.CreateDirectory(basePath); } var suffix = files[0].ContentType.Split('/'); //获取文件格式 var _suffix = suffix[1].Equals("jpeg", StringComparison.CurrentCultureIgnoreCase) ? ".jpg" : suffix[1]; var _temp = System.Web.HttpContext.Current.Request["name"]; //如果不修改文件名,则创建随机文件名 //if (!string.IsNullOrEmpty(_temp)) //{ // name = _temp; //} //else //{ Random rand = new Random(24 * (int)DateTime.Now.Ticks); name = rand.Next() + "." + _suffix; //} //文件保存 var full = basePath + name; files[0].SaveAs(full); var _result = "{\"jsonrpc\" : \"2.0\", \"result\" : null, \"Imgurl\" : \"" + name + "\"}"; System.Web.HttpContext.Current.Response.Write(_result); } public bool IsReusable { get { return false; } } } ```
webuploader传递文件MD5值的问题,高手速来。
![图片说明](https://img-ask.csdn.net/upload/201506/11/1434026210_33853.png) 为什么 Uploader.Register方法报错,undifind,不能识别。。。求救,webuploader如何传递文件的MD5值。。。。如果有JAVA大文件分片上传的DEMO,感激不尽,可以金钱交换。。有意联系,QQ510080612
关于SWF格式视频在IE8浏览器中不能播放问题,在线等,谢谢
SWF格式视频在火狐和谷歌都可以正常播放,IE9及以上版本也可以播放,但是在IE8下就不可以播放,请问什么原因? ```![在IE8下的情况和正常播放的情况](https://img-ask.csdn.net/upload/201501/13/1421115597_239602.png)](https://img-ask.csdn.net/upload/201501/13/1421115571_372708.png) <script src="${ct}/businessConsole/javascript/jquery-easyui-1.3.2/jquery-1.8.0.min.js"></script> <script src="${ct}/plugins/jwplayer-6.10/jwplayer.js"></script> <title>视频播放</title> <style type="text/css"> #uploader { width: 800px; margin: 0 auto; } </style> </head> <body> <div id="uploader"> <div id="videoPlayer"></div> </div> <script type="text/javascript"> //直接通过http://127.0.0.1:8080/seas/download.tool?wjDm=fb3b8a8e-e28a-4645-ab34-011f5188965c&type=file 请求文件 视频播放不出来 可能是jwplayer 判断了视频url后缀不是视频格式(mp4 ) //改成页面加载先ajax请求通过文件代码 获取视频文件 返回视频文件名 $(function(){ $.ajax({ type : 'post', url : '${ct}/download.tool', data :{"wjDm":"${param.wjDm}"}, dataType : 'json', success : function(result) { if(result.isSucces){ var file = '${ct}/upload/'+result.url;//返回视频文件名 jwplayer.key = "7BH6PZgZMlvZhlYfcaKzMMQwzYgEHRqYYiZE0w=="; jwplayer("videoPlayer").setup({ flashplayer:'${ct}/jwplayer-6.10/jwplayer.flash.swf', // file:'${ct}/upload/oceans.mp4', file:file, //file:'http://127.0.0.1:8080/seas/download.tool?wjDm=fb3b8a8e-e28a-4645-ab34-011f5188965c&type=file', image:'${ct}/upload/videoBg.jpg', width:500, height:350, dock:false, modes:'flash' }); }else{ alert('预览失败'); } } }); }); ```
爬虫福利二 之 妹子图网MM批量下载
爬虫福利一:27报网MM批量下载    点击 看了本文,相信大家对爬虫一定会产生强烈的兴趣,激励自己去学习爬虫,在这里提前祝:大家学有所成! 目标网站:妹子图网 环境:Python3.x 相关第三方模块:requests、beautifulsoup4 Re:各位在测试时只需要将代码里的变量 path 指定为你当前系统要保存的路径,使用 python xxx.py 或IDE运行即可。
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 顺便拉下票,我在参加csdn博客之星竞选,欢迎投票支持,每个QQ或者微信每天都可以投5票,扫二维码即可,http://m234140.nofollow.ax.
比特币原理详解
一、什么是比特币 比特币是一种电子货币,是一种基于密码学的货币,在2008年11月1日由中本聪发表比特币白皮书,文中提出了一种去中心化的电子记账系统,我们平时的电子现金是银行来记账,因为银行的背后是国家信用。去中心化电子记账系统是参与者共同记账。比特币可以防止主权危机、信用风险。其好处不多做赘述,这一层面介绍的文章很多,本文主要从更深层的技术原理角度进行介绍。 二、问题引入 假设现有4个人...
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 欢迎 改进 留言。 演示地点跳到演示地点 html代码如下`&lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;music&lt;/title&gt; &lt;meta charset="utf-8"&gt
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。 1. for - else 什么?不是 if 和 else 才
数据库优化 - SQL优化
前面一篇文章从实例的角度进行数据库优化,通过配置一些参数让数据库性能达到最优。但是一些“不好”的SQL也会导致数据库查询变慢,影响业务流程。本文从SQL角度进行数据库优化,提升SQL运行效率。 判断问题SQL 判断SQL是否有问题时可以通过两个表象进行判断: 系统级别表象 CPU消耗严重 IO等待严重 页面响应时间过长
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 c/c++ 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7
通俗易懂地给女朋友讲:线程池的内部原理
餐厅的约会 餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”我楞了一下,心里想女朋友今天是怎么了,怎么突然问出这么专业的问题,但做为一个专业人士在女朋友面前也不能露怯啊,想了一下便说:“我先给你讲讲我前同事老王的故事吧!” 大龄程序员老王 老王是一个已经北漂十多年的程序员,岁数大了,加班加不动了,升迁也无望,于是拿着手里
经典算法(5)杨辉三角
杨辉三角 是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹
面试官:你连RESTful都不知道我怎么敢要你?
面试官:了解RESTful吗? 我:听说过。 面试官:那什么是RESTful? 我:就是用起来很规范,挺好的 面试官:是RESTful挺好的,还是自我感觉挺好的 我:都挺好的。 面试官:… 把门关上。 我:… 要干嘛?先关上再说。 面试官:我说出去把门关上。 我:what ?,夺门而去 文章目录01 前言02 RESTful的来源03 RESTful6大原则1. C-S架构2. 无状态3.统一的接
JDK12 Collectors.teeing 你真的需要了解一下
前言 在 Java 12 里面有个非常好用但在官方 JEP 没有公布的功能,因为它只是 Collector 中的一个小改动,它的作用是 merge 两个 collector 的结果,这句话显得很抽象,老规矩,我们先来看个图(这真是一个不和谐的图????): 管道改造经常会用这个小东西,通常我们叫它「三通」,它的主要作用就是将 downstream1 和 downstre...
为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?
关于SQL和ORM的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行了一番讨论,感触还是有一些,于是就有了今天这篇文。 声明:本文不会下关于Mybatis和JPA两个持久层框架哪个更好这样的结论。只是摆事实,讲道理,所以,请各位看官勿喷。 一、事件起因 关于Mybatis和JPA孰优孰劣的问题,争论已经很多年了。一直也没有结论,毕竟每个人的喜好和习惯是大不相同的。我也看
SQL-小白最佳入门sql查询一
不要偷偷的查询我的个人资料,即使你再喜欢我,也不要这样,真的不好;
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
【图解经典算法题】如何用一行代码解决约瑟夫环问题
约瑟夫环问题算是很经典的题了,估计大家都听说过,然后我就在一次笔试中遇到了,下面我就用 3 种方法来详细讲解一下这道题,最后一种方法学了之后保证让你可以让你装逼。 问题描述:编号为 1-N 的 N 个士兵围坐在一起形成一个圆圈,从编号为 1 的士兵开始依次报数(1,2,3…这样依次报),数到 m 的 士兵会被杀死出列,之后的士兵再从 1 开始报数。直到最后剩下一士兵,求这个士兵的编号。 1、方...
致 Python 初学者
欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,...
程序员:我终于知道post和get的区别
是一个老生常谈的话题,然而随着不断的学习,对于以前的认识有很多误区,所以还是需要不断地总结的,学而时习之,不亦说乎
GitHub标星近1万:只需5秒音源,这个网络就能实时“克隆”你的声音
作者 | Google团队 译者 | 凯隐 编辑 | Jane 出品 | AI科技大本营(ID:rgznai100) 本文中,Google 团队提出了一种文本语音合成(text to speech)神经系统,能通过少量样本学习到多个不同说话者(speaker)的语音特征,并合成他们的讲话音频。此外,对于训练时网络没有接触过的说话者,也能在不重新训练的情况下,仅通过未知...
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU...
加快推动区块链技术和产业创新发展,2019可信区块链峰会在京召开
11月8日,由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办,科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。   区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力,电力解决了人类基本的生活需求,互联网彻底改变了信息传递的方式,区块链作为构造信任的技术有重要的价值。   1...
程序员把地府后台管理系统做出来了,还有3.0版本!12月7号最新消息:已在开发中有github地址
第一幕:缘起 听说阎王爷要做个生死簿后台管理系统,我们派去了一个程序员…… 996程序员做的梦: 第一场:团队招募 为了应对地府管理危机,阎王打算找“人”开发一套地府后台管理系统,于是就在地府总经办群中发了项目需求。 话说还是中国电信的信号好,地府都是满格,哈哈!!! 经常会有外行朋友问:看某网站做的不错,功能也简单,你帮忙做一下? 而这次,面对这样的需求,这个程序员...
网易云6亿用户音乐推荐算法
网易云音乐是音乐爱好者的集聚地,云音乐推荐系统致力于通过 AI 算法的落地,实现用户千人千面的个性化推荐,为用户带来不一样的听歌体验。 本次分享重点介绍 AI 算法在音乐推荐中的应用实践,以及在算法落地过程中遇到的挑战和解决方案。 将从如下两个部分展开: AI算法在音乐推荐中的应用 音乐场景下的 AI 思考 从 2013 年 4 月正式上线至今,网易云音乐平台持续提供着:乐屏社区、UGC...
【技巧总结】位运算装逼指南
位算法的效率有多快我就不说,不信你可以去用 10 亿个数据模拟一下,今天给大家讲一讲位运算的一些经典例子。不过,最重要的不是看懂了这些例子就好,而是要在以后多去运用位运算这些技巧,当然,采用位运算,也是可以装逼的,不信,你往下看。我会从最简单的讲起,一道比一道难度递增,不过居然是讲技巧,那么也不会太难,相信你分分钟看懂。 判断奇偶数 判断一个数是基于还是偶数,相信很多人都做过,一般的做法的代码如下...
【管理系统课程设计】美少女手把手教你后台管理
【文章后台管理系统】URL设计与建模分析+项目源码+运行界面 栏目管理、文章列表、用户管理、角色管理、权限管理模块(文章最后附有源码) 1. 这是一个什么系统? 1.1 学习后台管理系统的原因 随着时代的变迁,现如今各大云服务平台横空出世,市面上有许多如学生信息系统、图书阅读系统、停车场管理系统等的管理系统,而本人家里就有人在用烟草销售系统,直接在网上完成挑选、购买与提交收货点,方便又快捷。 试想,若没有烟草销售系统,本人家人想要购买烟草,还要独自前往药...
4G EPS 第四代移动通信系统
目录 文章目录目录4G 与 LTE/EPCLTE/EPC 的架构E-UTRANE-UTRAN 协议栈eNodeBEPCMMES-GWP-GWHSSLTE/EPC 协议栈概览 4G 与 LTE/EPC 4G,即第四代移动通信系统,提供了 3G 不能满足的无线网络宽带化,主要提供数据(上网)业务。而 LTE(Long Term Evolution,长期演进技术)是电信领域用于手机及数据终端的高速无线通...
日均350000亿接入量,腾讯TubeMQ性能超过Kafka
整理 | 夕颜出品 | AI科技大本营(ID:rgznai100)【导读】近日,腾讯开源动作不断,相继开源了分布式消息中间件TubeMQ,基于最主流的 OpenJDK8开发的Tencent Kona JDK,分布式HTAP数据库 TBase,企业级容器平台TKEStack,以及高性能图计算框架Plato。短短一周之内,腾讯开源了五大重点项目。其中,TubeMQ是腾讯大数据平台部门应用的核心组件,...
相关热词 c# 输入ip c# 乱码 报表 c#选择结构应用基本算法 c# 收到udp包后回包 c#oracle 头文件 c# 序列化对象 自定义 c# tcp 心跳 c# ice连接服务端 c# md5 解密 c# 文字导航控件
立即提问