いいえマイクロチャネルアクセス公共のJavaません

。はじめにマイクロチャンネル公衆数

1.サービス、サブスクリプションの数、アプレット、企業のマイクロ流路に数;
2.ユーザ公開マイクロチャンネル番号のメッセージは、マイクロチャネルの情報をサーバーに送信し、
サーバ管理者を救うために公共のマイクロチャネル番号は、ルール管理プラットフォームで指定しました
マイクロチャネルサーバは良いルールエリアや公共番の相互作用の設定に基づいて行われます。
3.プログラムが要求を処理しないマイクロチャネルサーバに期待して、自分自身を開発することである、とき
が、要求は、私たち自身のプログラムにプッシュされたリクエストを処理し、
その後、マイクロチャネルサービスに結果を返します。微信サーバーは、ユーザーに結果を返します。

。ビルドにBの開発環境は、
ブラウザを介してコンピュータでは良いプログラムを開発1.直接アクセスすることができ、
別のコンピュータにアクセスする方法はありません、我々はこれらのコンピュータが接続されていることができます
IP経由で同じローカルエリアネットワークと、アクセスします。
インターネット上の2.他の人たちが開発したプログラムを見て、クラウドサーバに送信されたプログラムを起動していない。
我々は、開発プロセスでドッキングを行うためのプログラムのニーズとマイクロチャネルサーバに必要な、
マイクロチャネルサーバは、我々のプログラムを見つけることができない場合決してお尻は、現像、存在しない
ネットワークの浸透内行うには、我々は最初の必要性、
それが私たちのプロジェクトは、インターネット3.イントラネット上の他のコンピュータからアクセスすることが可能にするために目的を貫通、
ネットワーク侵入ソフトウェア:ピーナッツの殻、 nat123、ngrok(非常に安定し、無料ではない)
のネットワーク侵入原則内:
4.ngrokます:http://www.ngrok.cc/
1.ダウンロード登録アカウント;
2.トンネル化
プロトコル:HTTP
名前:ちょうど書き込み、
前集合ドメイン:ちょうど書き込み、
ローカルポート:localhost:80に(ローカルプロジェクトアクセスポート)
他の不要な塗りつぶし;
3.トンネルIDをコピーし、ngrokクライアントを起動します。

。オープンアクセスは、C
への容易なアクセスの開発1.
マイクロチャネルプラットフォームのログを記録する(基本設定」の開発を変更する必要性を)公衆数を;.
B個人口座の多くの機能の下でテストアカウントのアプリケーションを提供するために、利用できない、マイクロチャネル。
(HTTPS:// ; mp.weixin.qq.com / -数>サービス- 「文書の開発は- - 」を開発しないようになった「いいえアプリケーション・インターフェース・テスト)
。:マイクロチャンネル公共プラットフォームのCのアクセスを、開発者は、次の手順完了する必要があり
HTTPS://開発者に.weixin.qq.com / DOC / offiaccount / Basic_Information / Access_Overview.html
1、サーバ構成内の充填
2、検証サーバアドレス
3、ビジネス・ロジック・インタフェース・マニュアルに従って
URL + +プロジェクトメソッド名を介し2.urlネットワーク内名前
トークン:コードは一貫して要求します。

関連するコード

@RequestMapping("/index")
public String index(HttpServletRequest request) {	
    String signature = request.getParameter("signature");
    String timestamp = request.getParameter("timestamp");
    String nonce = request.getParameter("nonce");
    String echostr = request.getParameter("echostr");
    System.out.println(signature+"\n"+timestamp+"\n"+nonce+"\n"+echostr);   
    if(check(timestamp,nonce,signature,TOKEN)) {
    	 System.out.println("接入成功");
    }else {
    	 System.out.println("接入失败");
    }
    
	return "index";
}
/**
 * 校验参数
 * @param timestamp
 * @param nonce
 * @param signature
 * @param token
 * @return
 */
private boolean check(String timestamp, String nonce, String signature,String token) {
	//1.将token、timestamp、nonce三个参数进行字典序排序   
	  String [] str = {token,timestamp,nonce};
	  Arrays.sort(str);
	  //2)将三个参数字符串拼接成一个字符串进行sha1加密 
	  String strs = str[0]+str[1]+str[2];
	  String mysig= sha1(strs);
	  System.out.println("mysig:---->"+mysig);
	  //3)开发者获得加密后的字符串可与signature对比,标识该请求来源于微信
	 return mysig.equals(signature);
}

private String sha1(String strs) {
	// TODO Auto-generated method stub
	try {
		//获取加密对象
		MessageDigest md = MessageDigest.getInstance("sha1");
		//加密处理
	    byte[] digest = md.digest(strs.getBytes());
	    //处理加密结果
	    char [] chars = {'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'};
	    StringBuilder sb = new StringBuilder();
	    for (byte b : digest) {
		 sb.append((chars)[(b>>4)&15]);
		 sb.append(chars[b&15]);
		}
	    return sb.toString();
	} catch (NoSuchAlgorithmException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
	return null;
}

 

彼は194元の記事を発表 ウォン称賛11 ビュー50000 +

おすすめ

転載: blog.csdn.net/qq_29393273/article/details/104881296