JFinal Weixin 學習筆記(5)-- 微信頁面跳轉


項目結構

項目結構

WeixinApiController

WeixinApiController 繼承 ApiController ,所有使用 Api 的 controller 都需要繼承此類。
目前沒有使用 jfinal-weixin 接口,只是簡單地跳轉到主頁。

package com.nancarp.controller;

import com.jfinal.weixin.sdk.api.ApiConfig;
import com.jfinal.weixin.sdk.jfinal.ApiController;
import com.nancarp.utils.WeixinUtil;

public class WeixinApiController extends ApiController {

    /**
     * 如果要支持多公眾賬號,只需要在此返回各個公眾號對應的 ApiConfig 對象即可 可以通過在請求 url 中掛參數來動態從數據庫中獲取
     * ApiConfig 屬性值
     */
    @Override
    public ApiConfig getApiConfig() {
        return WeixinUtil.getApiConfig();
    }
    
    // 主頁
    public void index(){
        render("index.html");
    }

}

Constants

Constants 類保存項目中用到的常量

package com.nancarp.utils;

import com.jfinal.kit.PropKit;

public class Constants {
    // 獲取域名
    public static String host = PropKit.get("host");
    
}

WeixinConfig 增加路由

@Override
public void configRoute(Routes me) {
    // HelloWorld 路由
    me.add("/hello",HelloWorldController.class);
    // 接收用戶消息和發送消息
    me.add("/msg", WeixinMsgController.class);
    // 操作微信接口
    me.add("/api", WeixinApiController.class,"/api");
}

修改 WeixinMsgController

url 要以 http://https:// 開頭,否則微信返回的信息只是單純的文本。

@Override
protected void processInTextMsg(InTextMsg inTextMsg) {
    // 文本內容
    String msgContent = inTextMsg.getContent().trim();
    // 回復主頁鏈接
    if ("1".equals(msgContent) || "主頁".equals(msgContent)){
        OutTextMsg outMsg = new OutTextMsg(inTextMsg);
        String url = Constants.host + "/api/index";
        String urlStr = "<a href=\""+url+"\">點擊跳轉主頁</a>";
        outMsg.setContent(urlStr);
        render(outMsg);
    } else {
        // 其它文本消息直接返回原值
        OutTextMsg outMsg = new OutTextMsg(inTextMsg);
        outMsg.setContent("\t文本消息已成功接收,內容為: " + inTextMsg.getContent());
        render(outMsg);
    }
}

index.html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>主頁</title>
</head>
<body>
    <h1>歡迎來到主頁</h1>
</body>
</html>

啟動項目

不出意外,將會得到如下結果:


回復消息
主頁

源碼地址
JFinal Weixin 學習筆記(6)-- 獲取微信接口調用憑據
JFinal Weixin 學習筆記(1)-- 目錄

參考文章

微信公眾號開發之如何實現消息交互
JFinal Weixin 極速開發 SDK

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容