nodejs移動(dòng)端formidable上傳圖片-

html代碼:

<form enctype='multipart/form-data' method="post" action='/file/uploading'>

<input class="weui_uploader_input" id="upload" name="upload" type="file" accept="image/jpg,image/jpeg,image/png,image/gif">

</form>

<script>

$('#upload').on('change',function(){

? ? $(this).closest('form').submit();

});

$('form').submit(function(){

//? return false;

});

</script>


服務(wù)端js


var express=require('express');

var router=express.Router();

var formidable=require('formidable');

var fs=require('fs');

var gm=require('gm').subClass({imageMagick:true});

router.post('/file/uploading',function(req,res,next){

//res.header( 'Content-Type','text/javascript;charset=utf-8');? ? ? ? //設(shè)置返回字符串編碼

varform=newformidable.IncomingForm();//創(chuàng)建對(duì)象

form.uploadDir=global.dirname+"/public/upload/source";//設(shè)置臨時(shí)文件存放的路徑

form.encoding='utf-8';//設(shè)置上傳數(shù)據(jù)的編碼

form.keepExtensions=true;//設(shè)置是否保持上傳文件的拓展名

form.maxFieldsSize=4*1024*1024;//文件大小

form.parse(req,function(err, fields, files) {

if(err) {

res.render('/', {title: err });

return;

}

var extName='jpg';//后綴名

switch(files.upload.type) {

case' image/pjpeg':

extName='jpg';

break;

case 'image/jpeg':

extName='jpg';

break;

case 'image/png':

extName='png';

break;

case 'image/x-png':

extName='png';

break;

case 'image/gif':

extName='gif';

break;

}

if(extName.length==0){

res.send('上傳文件類型有誤!');

return;

}

var avatarName=uuid.uuid(8,16)+'_normal'+'.'+extName;

var newPath=form.uploadDir+"/"+avatarName;

fs.renameSync(files.upload.path, newPath);? //重命名

response.writeHead(200,{"Content-Type":"text.html"});

response.write("received image:");

response.end();

});

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容