国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

spring boot整合第三方微信開發(fā)工具 weixin-java-miniapp 實(shí)現(xiàn)小程序微信登錄

這篇具有很好參考價值的文章主要介紹了spring boot整合第三方微信開發(fā)工具 weixin-java-miniapp 實(shí)現(xiàn)小程序微信登錄。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

有時候項(xiàng)目需要用到微信登錄或獲取用戶的手機(jī)號碼,weixin-java-miniapp是一個好用的第三方工具,不用我們自己寫httpcline調(diào)用。

導(dǎo)入jar包

       <dependency>
            <groupId>com.github.binarywang</groupId>
            <artifactId>weixin-java-miniapp</artifactId>
            <version>4.1.0</version>
        </dependency>

添加一個resource.properties文件,寫上小程序的appid和secret

wx.miniapp.appid: xxxxxxxxxxxx
wx.miniapp.secret: xxxxxxxxxxxxxxxxxxxxxxxxxx
wx.miniapp.msgDataFormat: JSON

添加兩個配置文件
WxMaProperties.java

@ConfigurationProperties(prefix = "wx.miniapp")
public class WxMaProperties {

    /**
     * 設(shè)置微信小程序的appid
     */
    private String appid;

    /**
     * 設(shè)置微信小程序的Secret
     */
    private String secret;

    /**
     * 消息格式,XML或者JSON
     */
    private String msgDataFormat;

    public String getAppid() {
        return appid;
    }

    public void setAppid(String appid) {
        this.appid = appid;
    }

    public String getSecret() {
        return secret;
    }

    public void setSecret(String secret) {
        this.secret = secret;
    }

    public String getMsgDataFormat() {
        return msgDataFormat;
    }

    public void setMsgDataFormat(String msgDataFormat) {
        this.msgDataFormat = msgDataFormat;
    }

WxMaConfiguration.java

@Configuration
@EnableConfigurationProperties(WxMaProperties.class)
public class WxMaConfiguration {

    @Bean
    public WxMaService wxMaService(WxMaProperties properties) {
        WxMaDefaultConfigImpl config = new WxMaDefaultConfigImpl();
        config.setAppid(properties.getAppid());
        config.setSecret(properties.getSecret());
        config.setMsgDataFormat(properties.getMsgDataFormat());

        WxMaService service = new WxMaServiceImpl();
        service.setWxMaConfig(config);
        return service;
    }

}

如何使用


    @Autowired
	private WxMaService wxMaService;

    @ApiOperation("獲取微信授權(quán)信息")
    @ApiImplicitParam(name = "code",value = "前端授權(quán)登錄后傳來的code", required = true,paramType = "query")
    @RequestMapping(value = "/wechatSession", method = RequestMethod.POST)
    @ResponseBody
    public ResponseResult wechatSession(@RequestParam String code) {
        //獲取openId、unionid、session_key
        WxMaJscode2SessionResult sessionInfo = wxMaService.getUserService().getSessionInfo(code);
    }


    @ApiOperation("小程序手機(jī)號登錄")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "sessionKey", value = "sessionKey", paramType = "query", dataType = "string", required = true),
            @ApiImplicitParam(name = "encryptedData", value = "加密串", paramType = "query", dataType = "string", required = true),
            @ApiImplicitParam(name = "iv", value = "偏移量", paramType = "query", dataType = "string", required = true)
    })
    @RequestMapping(value = "/wechatLogin", method = RequestMethod.POST)
    @ResponseBody
    public ResponseResult wechatLogin(HttpServletRequest request,                                     
                                      @RequestParam @NotBlank(message = "sessionKey不能為空") String sessionKey,                                    
                                      @RequestParam @NotBlank(message = "加密串不能為空") String encryptedData,
                                      @RequestParam @NotBlank(message = "偏移串不能為空") String iv) {
        WxMaPhoneNumberInfo phoneInfo = wxMaService.getUserService().getPhoneNoInfo(sessionKey, encryptedData, iv);
        return phoneInfo.getPurePhoneNumber(); 
    }

小程序給微信發(fā)送消息通知,類似于下圖
weixin-java-miniapp,spring boot,java,微信,spring boot
在resource.properties添加相關(guān)類型的消息通知id,在申請小程序那配置

#通知類型1
wx.miniapp.msg.template_id_1: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
#通知類型2
wx.miniapp.msg.template_id_2: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

如何使用:文章來源地址http://www.zghlxwxcb.cn/news/detail-597493.html

   @Value("${wx.miniapp.msg.template_id_1}")
    private String msgTemplateId1;

    @Value("${wx.miniapp.msg.template_id_2}")
    private String msgTemplateId2;

/**
openId : 用戶微信登錄的openID
*/
   private boolean sendSubscribeMessage(String openId) {
        String page="pages/index/index"; // 應(yīng)該是消息點(diǎn)擊后跳轉(zhuǎn)頁面
        WxMaSubscribeMessage message = new WxMaSubscribeMessage();
        message.setTemplateId(msgTemplateId1);
        message.setToUser(openId);
        message.setPage(page);
        List<WxMaSubscribeMessage.MsgData> subscribeDataList = new ArrayList<>();
        WxMaSubscribeMessage.MsgData subscribeData = new WxMaSubscribeMessage.MsgData();
        subscribeData.setName("key1"); // 你在小程序自定義的key(比如“商家名稱”)
        subscribeData.setValue("奈雪的茶"); //key對應(yīng)的內(nèi)容
        //添加你配置要且要展示的內(nèi)容
        subscribeDataList.add(subscribeData);
   
        message.setData(subscribeDataList);
        try {
            wxMaService.getMsgService().sendSubscribeMsg(message);
            return true;
        } catch (WxErrorException e) {
            log.error("發(fā)送小程序訂閱消息失敗,errCode:{},errMsg:{}", e.getError().getErrorCode(), e.getError().getErrorMsg());
        }
        return false;
    }

到了這里,關(guān)于spring boot整合第三方微信開發(fā)工具 weixin-java-miniapp 實(shí)現(xiàn)小程序微信登錄的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • DAY02_Spring—第三方資源配置管理&Spring容器&Spring注解開發(fā)&Spring整合Mybatis和Junit

    DAY02_Spring—第三方資源配置管理&Spring容器&Spring注解開發(fā)&Spring整合Mybatis和Junit

    說明:以管理DataSource連接池對象為例講解第三方資源配置管理 問題導(dǎo)入 配置數(shù)據(jù)庫連接參數(shù)時,注入驅(qū)動類名是用driverClassName還是driver? 1.1 管理Druid連接池 數(shù)據(jù)庫準(zhǔn)備 【第一步】添加Druid連接池依賴 注意:除了添加以上兩個依賴之外,別忘了添加spring-context依賴。 【第二

    2024年02月13日
    瀏覽(124)
  • DAY02_Spring第三方資源配置管理&Spring容器&Spring注解開發(fā)&Spring整合Mybatis和Junit

    DAY02_Spring第三方資源配置管理&Spring容器&Spring注解開發(fā)&Spring整合Mybatis和Junit

    說明:以管理DataSource連接池對象為例講解第三方資源配置管理 問題導(dǎo)入 配置數(shù)據(jù)庫連接參數(shù)時,注入驅(qū)動類名是用driverClassName還是driver? 1.1 管理Druid連接池 數(shù)據(jù)庫準(zhǔn)備 【第一步】添加Druid連接池依賴 注意:除了添加以上兩個依賴之外,別忘了添加spring-context依賴。 【第二

    2024年02月14日
    瀏覽(105)
  • 對接第三方接口鑒權(quán)(Spring Boot+Aop+注解實(shí)現(xiàn)Api接口簽名驗(yàn)證)

    對接第三方接口鑒權(quán)(Spring Boot+Aop+注解實(shí)現(xiàn)Api接口簽名驗(yàn)證)

    一個web系統(tǒng),從接口的使用范圍也可以分為對內(nèi)和對外兩種,對內(nèi)的接口主要限于一些我們內(nèi)部系統(tǒng)的調(diào)用,多是通過內(nèi)網(wǎng)進(jìn)行調(diào)用,往往不用考慮太復(fù)雜的鑒權(quán)操作。但是,對于對外的接口,我們就不得不重視這個問題,外部接口沒有做鑒權(quán)的操作就直接發(fā)布到互聯(lián)網(wǎng),而

    2024年04月29日
    瀏覽(133)
  • Spring Boot 最新版3.x 集成 OAuth 2.0實(shí)現(xiàn)認(rèn)證授權(quán)服務(wù)、第三方應(yīng)用客戶端以及資源服務(wù)

    Spring Boot 最新版3.x 集成 OAuth 2.0實(shí)現(xiàn)認(rèn)證授權(quán)服務(wù)、第三方應(yīng)用客戶端以及資源服務(wù)

    Spring Boot 3 已經(jīng)發(fā)布一段時間,網(wǎng)上關(guān)于 Spring Boot 3 的資料不是很多,本著對新技術(shù)的熱情,學(xué)習(xí)和研究了大量 Spring Boot 3 新功能和新特性,感興趣的同學(xué)可以參考 Spring 官方資料全面詳細(xì)的新功能/新改進(jìn)介紹 Spring 版本升級到6.x JDK版本至少17+ … 新特性有很多,本文主要針對

    2024年02月02日
    瀏覽(97)
  • 第三方開發(fā)工具—PyCharm(安裝、使用、漢化)超詳細(xì)、圖超多、注腳特多(Windows操作系統(tǒng))

    第三方開發(fā)工具—PyCharm(安裝、使用、漢化)超詳細(xì)、圖超多、注腳特多(Windows操作系統(tǒng))

    目錄 前言 一、PyCharm安裝 安裝地址 安裝步驟 二、第一次啟動 三、使用(開始編程) 1.第一個文件夾 2.第一個程序 3.運(yùn)行第一個程序 四、漢化插件 五、總結(jié) 做任何事情時,舒適的環(huán)境是非常重要的。一個好的軟件開發(fā)環(huán)境能給人帶來不一樣的體驗(yàn)。 先讓我們來看看PyCharm的

    2024年02月03日
    瀏覽(107)
  • Springboot整合第三方登錄

    Springboot整合第三方登錄

    Springboot整合第三方登錄 為什么采用第三方登錄 ? 采用第三方登錄可以避免重新注冊賬號的繁瑣,也不需要再為密碼和昵稱發(fā)愁,而第三方登錄有一個比較好用的包,里面整合了多種第三方登錄,開箱即用,非常方便。就是JustAuth,網(wǎng)址https://www.justauth.cn/。 整合第三方登錄

    2024年02月09日
    瀏覽(115)
  • OpenAi最簡潔的Java流式返回接入方式,沒有第三方依賴,只需要使用Spring Boot即可!輕松構(gòu)建你的帶有聊天記憶、畫圖功能的chatgpt!

    OpenAi最簡潔的Java流式返回接入方式,沒有第三方依賴,只需要使用Spring Boot即可!輕松構(gòu)建你的帶有聊天記憶、畫圖功能的chatgpt!

    OpenAi最簡潔的Java流式返回接入方式,沒有第三方依賴,只需要使用Spring Boot即可!輕松構(gòu)建你的帶有聊天記憶、畫圖功能的chatgpt! GitHub - NiuXiangQian/chatgpt-stream: OpenAi最簡潔的Java流式返回接入方式,沒有第三方依賴,只需要使用Spring Boot即可!輕松構(gòu)建你的帶有聊天記憶、畫圖

    2024年02月12日
    瀏覽(89)
  • springboot整合第三方技術(shù)郵件系統(tǒng)

    springboot整合第三方技術(shù)郵件系統(tǒng)

    springboot整合第三方技術(shù)郵件系統(tǒng),發(fā)郵件是java程序的基本操作,springboot整合javamail其實(shí)就是簡化開發(fā)。不熟悉郵件的小伙伴可以先學(xué)習(xí)完javamail的基礎(chǔ)操作,再來看這一部分內(nèi)容才能感觸到springboot整合javamail究竟簡化了哪些操作。簡化的多碼?其實(shí)不多,差別不大,只是還個

    2024年02月11日
    瀏覽(98)
  • SpringBoot【開發(fā)實(shí)用篇】---- 整合第三方技術(shù)(緩存)

    SpringBoot【開發(fā)實(shí)用篇】---- 整合第三方技術(shù)(緩存)

    企業(yè)級應(yīng)用主要作用是信息處理,當(dāng)需要讀取數(shù)據(jù)時,由于受限于數(shù)據(jù)庫的訪問效率,導(dǎo)致整體系統(tǒng)性能偏低。 應(yīng)用程序直接與數(shù)據(jù)庫打交道,訪問效率低 為了改善上述現(xiàn)象,開發(fā)者通常會在應(yīng)用程序與數(shù)據(jù)庫之間建立一種臨時的數(shù)據(jù)存儲機(jī)制,該區(qū)域中的數(shù)據(jù)在內(nèi)存中保

    2024年02月05日
    瀏覽(86)
  • 【SpringBoot】整合第三方技術(shù)Junit. MybatisPlus druid

    【SpringBoot】整合第三方技術(shù)Junit. MybatisPlus druid

    自己定義一個功能,測試功能接口 測試步驟 注入你要測試的對象 提前聲明為bean資源 執(zhí)行你要測試的方法 如果測試類在SpringBoot啟動類的包或者子包中,可以省略啟動類的設(shè)置們也就是省略classes的設(shè)定 新建一個模塊 勾選MybatisFrameWork 和MySQL driver 記得一定要配置數(shù)據(jù)庫連接信

    2024年02月06日
    瀏覽(128)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包