首页 > 其他分享 >调用微信接口返回openid

调用微信接口返回openid

时间:2023-10-11 23:24:58浏览次数:28  
标签:map code String openid 微信 param 接口 put

private String getOpenId(String code){
        String url = "https://api.weixin.qq.com/sns/jscode2session";
        HashMap map = new HashMap();
        map.put("appid", appId);
        map.put("secret", appSecret);
        map.put("js_code", code);
        map.put("grant_type", "authorization_code");
        // http请求
        String response = HttpUtil.post(url, map);
        // 返回响应转json,通过key获取value
        JSONObject jsonObject = JSONUtil.parseObj(response);
        String openid = jsonObject.getStr("openid");
        if(ValidateUtil.isEmpty(openid)){
            throw new RuntimeException("临时登陆凭证错误");
        }
        return openid;
    }

  

if (!bool) {
            //把当前用户绑定到ROOT帐户
            String openId = getOpenId(code);
            HashMap param = new HashMap();
            param.put("openId", openId);
            param.put("nickname", nickname);
            param.put("photo", photo);
            param.put("role", "[0]");
            param.put("status", 1);
            param.put("createTime", new Date());
            param.put("root", true);
            userDao.insert(param);
            int id = userDao.searchIdByOpenId(openId);
            return id;
        }

  map作为参数非常灵活,value可以是多种类型

标签:map,code,String,openid,微信,param,接口,put
From: https://www.cnblogs.com/sgj191024/p/17758484.html

相关文章

  • 标记接口
    在Java中,定义一个空接口作为父类是有意义的,因为它可以作为一个标记接口(MarkerInterface)。标记接口是指没有任何方法的接口,它仅仅是用来标记一个类是否具有某种特定的能力或属性。例如,Java中的Serializable接口就是一个标记接口,它用来标记一个类是否可以被序列化。如果一个类实现......
  • 接口2.0
    packagecom_black.jiekou.Demo01;publicinterfaceEnglish{publicabstractvoidspeak();}packagecom_black.jiekou.Demo01;publicabstractclassPerson{privateStringname;privateintage;publicPerson(){}publicPerson(Stringname,......
  • 导出微信支付交易明细证明账单记录修改删除PDF文件
    微信支付交易明细证明有两种修改方式,一种是导出账单到邮箱后再下载PDF账单文件到电脑桌面进行修改。第二种是导出前在后台修改,这种情况较为复杂要根据个人情况而定,暂不做陈述。现在先来说说第一种方式,先下载账单文件然后把PDF转成WORD的方式进行修改,这种方式简单粗暴,相信很多人都......
  • pytest接口测试中使用 base-url进行环境切换
    pytest-base-url是pytest的第三方插件,主要用来帮助我们进行切换测试环境地址,其中配置方法存在两种,一种直接在命令行中进行添加url参数  命令行参数传入 命令行参数传入,这里需要在我们需要传入的测试用例中,提前加入base-url的参数名称,方便后续命令行时好直接传入参数,也就......
  • 接口测试报500错误
    接口测试的时候报500错误 原因①:在表设计的时候,设置了这个数据不能重复,即表中已经存在了“就业部”这个消息了,所以报错。控制台报错信息:java.sql.SQLIntegrityConstraintViolationException:Duplicateentry'就业部'forkey'dept.name';Duplicateentry'就业部'fork......
  • 微信小程序商城分类滚动列表锚点(左菜单右列表)
    1、TestScroll.wxml<viewclass="content-box"><!--左侧分类--><scroll-viewscroll-yscroll-with-animationclass="left"style="width:245rpx;height:100%;background:#f2f2f2;"scroll-into-view='{{leftId}}&#......
  • interface 接口相关【GO 基础】
    〇、接口简介接口(interface)定义了一个对象的行为规范,只定义规范不实现,由具体的对象来实现规范的细节。也就是说,接口可以将一种或多种特征归纳到一起,其他不同的对象通过实现此接口,来表示可以具有此类特征,使得不同的类或模块之间进行通信和交互,而不需要了解彼此的具体实现细节,从而......
  • Python搭建数据查询接口服务
    启动一个服务,使用FastAPI框架,增加跨域允许1#-*-coding:UTF-8-*-2"""3@author:cc4@file:service.py5@time:2021/05/246"""78importsqlite39fromfastapiimportFastAPI10importuvicorn11importos12fromfastapi.......
  • 微信浏览器环境H5使用扫一扫功能
    一、需求:1、微信浏览器环境H5使用扫一扫功能=>方案:引入wxjssdk,然后获取公众号的签名信息;再在config中配置;配置好了就能使用扫一扫api了2、短信链接内部实现扫一扫功能=>方案:使用inputaccpet=“image/*”,读取图片区识别,识别二维码数据后发送给后台|-->由于手机浏览器兼容性问......
  • 又一个难题:Java 序列化和反序列化为什么要实现 Serializable 接口?
    作者:椰子Tyshawn来源:https://blog.csdn.net/litianxiang_kaola最近公司的在做服务化,需要把所有model包里的类都实现Serializable接口,同时还要显示指定serialVersionUID的值.听到这个需求,我脑海里就突然出现了好几个问题,比如说:序列化和反序列化是什么?实现序列化和......