微信图像接口:拍照或从手机相册中选图接口chooseImage+预览图片接口previewImage+上传图片接口uploadImage+下载图片接口downloadImage

微信JS-SDK说明文档

  • 后台获取拍照页面需先授权(原理同上一篇博客:微信网页授权)
//拍照页面
    @RequestMapping("/getTakePhotos")
    public ModelAndView getTakePhotos(HttpServletRequest request) {

        logger.info(">>>>>>>>>>>>>>>>获取拍照页面>>>>>>>>>>>>>>>>");

        ModelAndView modelAndView = new ModelAndView();

        //        部署服务器开启
        String code = request.getParameter("code");
        logger.info("code为:{}", code);
        if (StringUtils.isBlank(code)) {
            logger.info("进来这人没code,有问题");
            modelAndView.addObject("openId", "");
            modelAndView.addObject("errorInfo", "openId为空");
            modelAndView.setViewName("/mobile/404");

            return modelAndView;
        }

        String openid = "";
        try {

            String url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=" + ParamesAPI.appId+ "&secret=" + ParamesAPI.secret + "&code=" + code + "&grant_type=authorization_code";
            logger.info("url:{}", url);
            JSONObject result = HttpsClient.httpRequest(url, "GET", null);

            logger.info("获取openId的json:{}", result);
            openid = (String) result.get("openid");
            if (StringUtils.isEmpty(openid)) {
                logger.info("openid为空:{}", openid);
                /**
                 * 跳转错误页面
                 */
                modelAndView.setViewName("/mobile/404");
                return modelAndView;
            }
            request.getSession().setAttribute("openId", openid);

        } catch (Exception e) {
            logger.info("未知错误:{}", e);
            modelAndView.addObject("openId", "");
            modelAndView.addObject("errorInfo", "openId为空");
            modelAndView.setViewName("/mobile/404");
            return modelAndView;
        }

        modelAndView.setViewName("mobile/takePhotos");
        return modelAndView;
    }
  • 拍照页面takePhoto.jsp
    步骤一:绑定域名
    先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。
    绑定域名
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib uri="http://www.springframework.org/security/tags" prefix="sec" %>
<html>
<head>
    <meta charset="utf-8">
    <title>微信拍照</title>
    <meta name="viewport" content="width=device-width, initial-scale=1,maximum-scale=1,user-scalable=no">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="apple-mobile-web-app-status-bar-style" content="bl
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值