微信小程序內實現上傳圖片附后端代碼

這次給大家帶來微信小程序內實現上傳圖片附后端代碼,微信小程序內實現上傳圖片的注意事項有哪些,下面就是實戰案例,一起來看一下。愛掏網 - it200.com

當然小程序也是可以上傳圖片的,微信小程序文檔也寫的很清楚。愛掏網 - it200.com

上傳圖片

首先選擇圖片

通過wx.chooseImage(OBJECT)實現

官方示例代碼

wx.chooseImage({
?count:?1,?//?默認9
?sizeType:?['original',?'compressed'],?//?可以指定是原圖還是壓縮圖,默認二者都有
?sourceType:?['album',?'camera'],?//?可以指定來源是相冊還是相機,默認二者都有
?success:?function?(res)?{
?//?返回選定照片的本地文件路徑列表,tempFilePath可以作為img標簽的src屬性顯示圖片
?var?tempFilePaths?=?res.tempFilePaths
?}
})
登錄后復制

圖片最多可以選擇9張, 也可以通過拍攝照片實現,當選擇完圖片之后會獲取到圖片路徑, 這個路徑在本次啟動期間有效。愛掏網 - it200.com
如果需要保存就需要用wx.saveFile(OBJECT)

上傳圖片

通過wx.uploadFile(OBJECT) 可以將本地資源文件上傳到服務器。愛掏網 - it200.com

原理就是客戶端發起一個 HTTPS POST 請求,其中 content-type為 multipart/form-data。愛掏網 - it200.com

官方示例代碼

wx.chooseImage({
?success:?function(res)?{
?var?tempFilePaths?=?res.tempFilePaths
?wx.uploadFile({
??url:?'http://example.weixin.qq.com/upload',?//僅為示例,非真實的接口地址
??filePath:?tempFilePaths[0],
??name:?'file',
??formData:{
??'user':?'test'
??},
??success:?function(res){
??var?data?=?res.data
??//do?something
??}
?})
?}
})
登錄后復制

示例代碼

看完了官方文檔, 寫一個上傳圖片就沒有那么麻煩了,下面是真實場景的代碼

import?constant?from?'../../common/constant';
Page({
?data:?{
?src:?"../../image/photo.png",?//綁定image組件的src
??//略...
?},
?onLoad:?function?(options)?{
??//略...?
?},
?uploadPhoto()?{
?var?that?=?this;?
?wx.chooseImage({
??count:?1,?//?默認9
??sizeType:?['compressed'],?//?可以指定是原圖還是壓縮圖,默認二者都有
??sourceType:?['album',?'camera'],?//?可以指定來源是相冊還是相機,默認二者都有
??success:?function?(res)?{
??//?返回選定照片的本地文件路徑列表,tempFilePath可以作為img標簽的src屬性顯示圖片
??var?tempFilePaths?=?res.tempFilePaths;
??upload(that,?tempFilePaths);
??}
?})
?}
})
function?upload(page,?path)?{
?wx.showToast({
?icon:?"loading",
?title:?"正在上傳"
?}),
?wx.uploadFile({
??url:?constant.SERVER_URL?+?"/FileUploadServlet",
??filePath:?path[0],?
??name:?'file',
??header:?{?"Content-Type":?"multipart/form-data"?},
??formData:?{
??//和服務器約定的token,?一般也可以放在header中
??'session_token':?wx.getStorageSync('session_token')
??},
??success:?function?(res)?{
??console.log(res);
??if?(res.statusCode?!=?200)?{?
???wx.showModal({
???title:?'提示',
???content:?'上傳失敗',
???showCancel:?false
???})
???return;
??}
??var?data?=?res.data
??page.setData({?//上傳成功修改顯示頭像
???src:?path[0]
??})
??},
??fail:?function?(e)?{
??console.log(e);
??wx.showModal({
???title:?'提示',
???content:?'上傳失敗',
???showCancel:?false
??})
??},
??complete:?function?()?{
??wx.hideToast();?//隱藏Toast
??}
?})
}
登錄后復制

后端代碼

后端是用java寫的,一開始的時候,后端開始用了一些框架接收上傳的圖片,出現了各種問題,后來使用了純粹的Servlet就沒有了問題, 把代碼貼出來省的以后麻煩了。愛掏網 - it200.com

注意: 代碼使用了公司內部的框架,建議修改后再使用

public?class?FileUploadServlet?extends?HttpServlet?{
?private?static?final?long?serialVersionUID?=?1L;
?private?static?Logger?logger?=?LoggerFactory.getLogger(FileUploadServlet.class);
?public?FileUploadServlet()?{
??super();
?}
?protected?void?doGet(HttpServletRequest?request,?HttpServletResponse?response)?throws?ServletException,?IOException?{
??JsonMessage
登錄后復制

相信看了本文案例你已經掌握了方法,更多精彩請關注愛掏網 - it200.com其它相關文章!

推薦閱讀:

關于js的三種使用方式案例詳解(附代碼)

如何使用微信小程序做出圖片上傳

以上就是微信小程序內實現上傳圖片附后端代碼的詳細內容,更多請關注愛掏網 - it200.com其它相關文章!

聲明:所有內容來自互聯網搜索結果,不保證100%準確性,僅供參考。如若本站內容侵犯了原著者的合法權益,可聯系我們進行處理。
發表評論
更多 網友評論0 條評論)
暫無評論

返回頂部

主站蜘蛛池模板: 一级做a爰片久久毛片下载| 中文字幕欧美成人免费| 精品日韩二区三区精品视频 | 日韩国产成人精品视频| 制服丝袜日韩中文字幕在线| 888午夜不卡理论久久| 激情综合网五月| 成人欧美一区二区三区在线| 亚洲日韩精品欧美一区二区| 里番肉片h排行榜| 在线观看免费国产视频| 久久国产精品无码一区二区三区| 男女一边摸一边做爽视频| 国产成人精品无码免费看| 一本无码中文字幕在线观| 欧美videosex性欧美成人| 制服丝袜在线不卡| 狠狠色综合色区| 大学生男男澡堂69gaysex| 亚洲综合无码无在线观看| 黄色网站免费在线观看| 好深好爽办公室做视频| 久久综合视频网| 狠狠综合久久久久尤物丿| 国产午夜在线观看视频播放| 99re这里只有热视频| 欧美丝袜高跟鞋一区二区| 午夜两性色视频免费网站| 欧美人与物videos另| 女仆胸大又放荡的h| 久久免费看视频| 欧美日韩在线视频不卡一区二区三区 | 中文字幕精品视频| 欧美最猛性xxxxx69交| 另类视频第一页| 精品一区二区三区色花堂| 情人伊人久久综合亚洲| 久草网在线视频| 污污网站在线免费观看| 向日葵视频app免费下载 | 国精品午夜福利视频不卡757|