項(xiàng)目結(jié)構(gòu)
項(xiàng)目結(jié)構(gòu)
WeixinApiController
WeixinApiController
繼承 ApiController
盏缤,所有使用 Api 的 controller 都需要繼承此類瞎嬉。
目前沒(méi)有使用 jfinal-weixin 接口万伤,只是簡(jiǎn)單地跳轉(zhuǎn)到主頁(yè)。
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 {
/**
* 如果要支持多公眾賬號(hào)秉馏,只需要在此返回各個(gè)公眾號(hào)對(duì)應(yīng)的 ApiConfig 對(duì)象即可 可以通過(guò)在請(qǐng)求 url 中掛參數(shù)來(lái)動(dòng)態(tài)從數(shù)據(jù)庫(kù)中獲取
* ApiConfig 屬性值
*/
@Override
public ApiConfig getApiConfig() {
return WeixinUtil.getApiConfig();
}
// 主頁(yè)
public void index(){
render("index.html");
}
}
Constants
Constants
類保存項(xiàng)目中用到的常量
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);
// 接收用戶消息和發(fā)送消息
me.add("/msg", WeixinMsgController.class);
// 操作微信接口
me.add("/api", WeixinApiController.class,"/api");
}
修改 WeixinMsgController
url
要以 http://
或 https://
開(kāi)頭罐寨,否則微信返回的信息只是單純的文本自沧。
@Override
protected void processInTextMsg(InTextMsg inTextMsg) {
// 文本內(nèi)容
String msgContent = inTextMsg.getContent().trim();
// 回復(fù)主頁(yè)鏈接
if ("1".equals(msgContent) || "主頁(yè)".equals(msgContent)){
OutTextMsg outMsg = new OutTextMsg(inTextMsg);
String url = Constants.host + "/api/index";
String urlStr = "<a href=\""+url+"\">點(diǎn)擊跳轉(zhuǎn)主頁(yè)</a>";
outMsg.setContent(urlStr);
render(outMsg);
} else {
// 其它文本消息直接返回原值
OutTextMsg outMsg = new OutTextMsg(inTextMsg);
outMsg.setContent("\t文本消息已成功接收,內(nèi)容為: " + inTextMsg.getContent());
render(outMsg);
}
}
index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>主頁(yè)</title>
</head>
<body>
<h1>歡迎來(lái)到主頁(yè)</h1>
</body>
</html>
啟動(dòng)項(xiàng)目
不出意外明刷,將會(huì)得到如下結(jié)果:
回復(fù)消息
主頁(yè)
源碼地址
JFinal Weixin 學(xué)習(xí)筆記(6)-- 獲取微信接口調(diào)用憑據(jù)
JFinal Weixin 學(xué)習(xí)筆記(1)-- 目錄
參考文章
微信公眾號(hào)開(kāi)發(fā)之如何實(shí)現(xiàn)消息交互
JFinal Weixin 極速開(kāi)發(fā) SDK