小程序图片上传 wx.uploadFile 后台java PHP两个版本

发布时间:2019-11-19 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了小程序图片上传 wx.uploadFile 后台java PHP两个版本脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

上传图片:前台选择图片并把临时地址上传后台,后台把图片上传至自己的服务器,以下是上传图片的方法,有后台是java的还有PHP的,如有疑问或不解,请留言。

前端:

wXMl:<view class='quan' bindtap='addTeamimage' >+</view>//定义添加图片的点击点。

js:

addTeamImage: function () {&nbsp;     //对应wxML点击事件

var that = this;

wx.chooseimage({    //选择图片

count: 1,

success: function (res) {    //选择图片成功

VAR tempFilePaths = res.tempFilePaths; //图片临时地址

that.setData({defaultHead: tempFilePaths[0]  });

wx.uploaDFile({     //上传图片

url: saveRunteamimgUrl,    //后台上传图片的方法地址

filePath: tempFilePaths[0],    //上传图片的临时地址

name: 'file',      //文件格式 

success: function (res) {    //上传成功

let obj = JSON.parse(res.data)      //返回值是json格式转化成object

that.setData({

teAMHeadUrl: obj.data     //将返回的图片服务器地址保存在变量中

})

if (obj.data == "error") {     //后台的上传方法出现问题

wx.showToast({ tITle: '图片上传失败,请重试!', icon: 'none', duration: 2000 })

that.setData({ teamHeadUrl: '' })

}},

})},

fail: function (res) {     //图片上传失败

that.setData({ teamHeadUrl: '' })

}})},

java后台:

ImageController.java

package com.th.controller;
//引入文件
import org.sPRingframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;

import javax.servlet.http.HttpServletRequest;
import java.io.File;
import java.io.IOException;
import java.util.Map;

/**

  • Created by wanglimin on 2019/1/31.

*/

@RestController
@RequestMapping("/image")
public class ImageController extends BaseController { //声明上传图片类文件

@ResponseBody @RequestMapping(value = "/uploadImage", method = RequestMethod.POST,produces = "application/json") public Map<String,Object> uploadImage(HttpServletRequest request) throws IOException {     MultipartHttpServletRequest req =(MultipartHttpServletRequest)request;     MultipartFile multipartFile =  req.getFile("file");      String realPath = "https://www.***.com/image";//服务器存放图片地址         try {         File dir = new File(realPath);         if (!dir.exists()) {             dir.mkdir();         }         String newPath = System.currentTimeMillis()+""+(int)(@H_806_126@1+Math.random()*(10000-1+1))+".jpg";//图片名称是毫秒数加1-10000的随机数         File file  =  new File(realPath,newPath);         multipartFile.transferTo(file);         return rtnParam(0,file.getPath());    // 返回图片上传到服务器上的地址     } catch (IOException e) {         e.printStackTrace();     } catch (IllegalStateException e) {         e.printStackTrace();     }      return rtnParam(0,"error");     //方法错误   rtnParam是继承base类中的方法 } 

}

BaseController.java

public class BaseController {

private Map<String, Object> errorCodeMap;  protected Map<String, Object> rtnParam(Integer errorCode, Object data) {     errorCodeMap = new HashMap<String, Object>();     errorCodeMap.put("errorCode", errorCode);     errorCodeMap.put("data", data);     return errorCodeMap; }

}

PHP后台

<?php
namespace ApiController;
use ThinkUpload;
use ThinkPage;
use ThinkController;
/**
 *
 * 客户端接口唯一入口
 * @author Administrator
 *
 */
class DefaultPostController extends Controller {   //注:前台的上传图片连接后台地址改:'https://*.com/api/defaultPost'’
    public function index(){
        if(IS_POST){
            $obj = new ThinkUpload();// 实例化上传类
            $obj->;maxSize = 2048000 ;// 设置附件上传大小
            $obj->savePath ='/runteam/'; // 设置附件上传目录
            $obj->exts =  array('jpg','jpeg','gif','png');// 设置附件上传类型
            $obj->saveName = array('uniqid','');//文件名规则
            $obj->replace = true;//存在同名文件覆盖
            $obj->autoSub = false;//使用子目录保存
            // 上传文件 gb
            $info =  $obj->upload();
            $file = $info['file'];
            $return = $file['savepath'].$file['savename'];
            
            header('Content-Type:application/json; charset=utf-8');
            exit(json_encode($return));  //返回服务器图片地址
        }
    }

}
获取更多文章,请关注公众号

小程序图片上传 wx.uploadFile   后台java   PHP两个版本

脚本宝典总结

以上是脚本宝典为你收集整理的小程序图片上传 wx.uploadFile 后台java PHP两个版本全部内容,希望文章能够帮你解决小程序图片上传 wx.uploadFile 后台java PHP两个版本所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。