最近、マイクロチャネル公共プラットフォームの開発に従事し、要求メッセージテンプレートを送信することで、当該インタフェースは、開発者のマニュアルに非常に詳細な説明がありhttps://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1433751277。
我々は彼らの特定のニーズを実現する方法を見て下:
まず、私たちは、メッセージテンプレートを送信し、第六である私たちが使いたい、7インターフェースがあることがわかり、上記のリンクをクリックして、他のインターフェイスは、ビジネスニーズに応じて実装することができます。
:第二に、インタフェースは、メッセージテンプレート送る
HTTPリクエストメソッドを:POST
https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=ACCESS_TOKEN
例のポストデータを次のように
{
"touser":"OPENID",
"template_id":"TEMPLATEID",
"data":{
"first": {
"value":"恭喜你购买成功!",
"color":"#173177"
},
"product":{
"value":"巧克力",
"color":"#173177"
},
"amount": {
"value":"39.8元",
"color":"#173177"
},
"time": {
"value":"2014年9月22日",
"color":"#173177"
},
"remark":{
"value":"欢迎再次购买!",
"color":"#173177"
}
}
}
しかしTEMPLATE_IDと、それはOpenIDを取得する方法を
3マイクロチャネル公共プラットフォームが制限されたアクセスインタフェースはここでテストすることが可能で、テストアカウントの公共プラットフォームを提供
1、インタフェース試験番号アプリケーション:
独自のプロジェクトアドレスの後にインターフェースの開始要求のURLをが、ネットワーク外のアドレス場合は、トークンが自分を書くことは自由です。
:あなたが自分でないURLアドレスをすれば、それは問題で、あなたがのNetToolsを使用することができ、ネットワークの浸透は、ローカルポート80にマッピングすることができますしない
2次元コードスキャンを懸念、2、アナログユーザー、ユーザーのOpenID用のマイクロ信号:
3、テンプレートの追加
テンプレートコンテンツを埋めるためのルールがあります。
次の例を埋める:
まあ、今のOpenIDとれるtemplateIdているが、我々はテストを開始しました。
成功を返します!
実行するためのテスト環境は、私たちは要求テンセント・インターフェースを持って来るためにパラメータを渡す必要がある、あなたがメッセージを送信するためのテンプレートを完了することができます。
Javaのバックエンドコード、我々は、エンティティをカプセル化する必要があります。
@Data
public class WxTemplateDomain implements Serializable {
private String toUser;
private String templateId;
private String url;
private Map<String, TemplateParam> data;
}
@Data
public class TemplateParam {
private String value;
private String color;
}
テンセントは、サービスレイヤインタフェースロジックを呼び出します。
public static final String TEMPLATE_URL = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=";
/**
* 发送模板消息
* @param wxTemplateDomain
* @return
*/
public JSONObject getTemplate(WxTemplateDomain wxTemplateDomain,String token){
//发送模板消息
String domain = JSONSerializer.toJSON(wxTemplateDomain).toString();
String result = HttpUtils.postJson(TEMPLATE_URL+token,domain);
JSONObject object = JSONObject.parseObject(result);
if (object != null) {
int errcode = object.getIntValue("errcode");
if (errcode != 0) {
throw new ApiException(1, object.getString("errmsg"));
}
}
return object;
}
ヘアポストテンセント要求コールインタフェースは、私は元の記事(文字列のURL、地図<文字列、?> RequestParam)が、ここではすべての47001、JSON / XMLパースエラーに与えられている、オンラインで検索、複数の回答を使用する場合、無効しようとした後、これだけpostjsonをこのように使用します。