1. 程式人生 > >利用微信JSSDK呼叫微信掃一掃功能

利用微信JSSDK呼叫微信掃一掃功能

1. 確保有 調起微信掃一掃介面 許可權,測試號可能不行;

2. 匯入相關JS

<script type="text/javascript" http://test.com/zepto_touch.js"></script>
<script type="text/javascript" src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>

3. 頁面觸發掃碼元素

<img src="../../../images/right.jpg" onclick="scanCode()" class="img">

4. 相關JS程式碼

<script type="text/javascript">
	var _appId = "wxz88dbd30e5580e59";
	var _data = {
		appId : _appId,
		url : location.href,
		t : Math.random()
	};
	var _getWechatSignUrl = 'http://test.com/getWechatSign.do';

	// 獲取微信簽名
	$.ajax({
		url : _getWechatSignUrl,
		data : _data,
		success : function(o) {
			console.log(o);
			if (o.returnCode == "00") {
				wxConfig(o.detail[0].timestamp, o.detail[0].nonceStr, o.detail[0].signature);
			}
		}
	});
	function wxConfig(_timestamp, _nonceStr, _signature) {
		//alert('獲取資料:'+_timestamp+'\n'+_nonceStr+'\n'+_signature);
		console.log('獲取資料:' + _timestamp + '\n' + _nonceStr + '\n' + _signature);
		wx.config({
			debug : true, // 開啟除錯模式,呼叫的所有api的返回值會在客戶端alert出來,若要檢視傳入的引數,可以在pc端開啟,引數資訊會通過log打出,僅在pc端時才會列印。
			appId : _appId, // 必填,公眾號的唯一標識
			timestamp : _timestamp, // 必填,生成簽名的時間戳
			nonceStr : _nonceStr, // 必填,生成簽名的隨機串
			signature : _signature,// 必填,簽名,見附錄1
			jsApiList : [ 'onMenuShareTimeline', 'onMenuShareAppMessage',
					'onMenuShareQQ', 'onMenuShareWeibo', 'scanQRCode' ]
		// 必填,需要使用的JS介面列表,所有JS介面列表見附錄2
		});
	}
	function scanCode() {
		wx.scanQRCode({
			needResult : 1,
			scanType : [ "qrCode", "barCode" ],
			success : function(res) {
				console.log(res)
				alert(JSON.stringify(res));
				var result = res.resultStr;
			},
			fail : function(res) {
				console.log(res)
				alert(JSON.stringify(res));

			}
		});
	}
</script>
5. 獲取簽名介面getWechatSign.do各值生成方式

timestamp

Long timestamp = System.currentTimeMillis() / 1000;

nonceStr
String nonceStr = RandomStringUtils.randomAlphanumeric(16);

signature

public static String getSign(String jsapi_ticket, String noncestr, Long timestamp, String url)
		throws NoSuchAlgorithmException {
	String shaStr = "jsapi_ticket=" + jsapi_ticket + "&noncestr=" + noncestr + "×tamp=" + timestamp + "&url="
			+ url;
	MessageDigest mDigest = MessageDigest.getInstance("SHA1");
	byte[] result = mDigest.digest(shaStr.getBytes());
	StringBuffer signature = new StringBuffer();
	for (int i = 0; i < result.length; i++) {
		signature.append(Integer.toString((result[i] & 0xff) + 0x100, 16).substring(1));
	}
	return signature.toString();
}

6. 微信參考文件



相關推薦

利用JSSDK呼叫功能

1. 確保有 調起微信掃一掃介面 許可權,測試號可能不行; 2. 匯入相關JS <script type="text/javascript" http://test.com/zepto_touch.js"></script> <script t

呼叫jssdk在網頁端實現呼叫,java+jsp

轉自:http://blog.csdn.net/u011327333/article/details/50439462 這篇文章以講解的方式,幫助大家來理解微信官方的文件,同時給出呼叫掃一掃的例子。 微信官方技術文件jssdk:http://mp.weixin.qq.

開發獲取Accesstoken和jsapi_ticket配置jssdk,呼叫

public static String[] getSign(String jsapi_ticket) throws NoSuchAlgorithmException { String[] data= new String[10]; Long timestamp= System.current

JSSDK開發,呼叫 JAVA & jsp前端 & js實現

// 微信JSSDK的AccessToken請求URL地址 ublic final static String weixin_jssdk_acceToken_url = "https://api.weixin.qq.com/cgi-bin/token?grant_type

ASP.NET MVC做的WEBAPP中調用JSSDK

lis qrc 頁面 edr 唯一標識 文件夾 tty 手機攝像頭 客戶端 今天做一個項目,是在微信上用的,微信WEB APP,裏面用到了調用手機攝像頭掃一掃二維碼的功能,記得以前某個項目裏寫有的,但是找不到之前那個項目源碼了,想復制粘貼也復制不了了,只好對著微信的那個開發

公眾號介面呼叫JS-SDK(vue專案,以為例)

該方法需引入微信js-sdk ,先npm安裝 //在一個地方呼叫this.weixin()方法,比如說按鈕 //寫掃一掃方法 weixin() { var that = this; var url=''; var params =

JAVA實現呼叫js-sdk

喜歡的朋友可以關注下。 已經很久沒有給大家分享一片技術文章了,今天抽了點時間來,給大家說一說如何呼叫微信提供的掃一掃介面。 前提: 需要申請一個公眾號:申請公眾號需要的資料我就不說了,去申請微信會提示需要哪些。 準備appid(公眾號的id) AppSecret (

小程式,呼叫功能

微信小程式呼叫掃一掃,將所得的資訊展示到頁面中 wxml檔案: <view bindtap='scancode'>     <text class='texts'>(點選掃一掃) </text> </view> <vi

開發 ---呼叫碼介面

呼叫微信掃碼介面 步驟一:繫結域名 微信公眾號繫結域名 步驟二:引入JS檔案 步驟三:通過config介面注入許可權驗證配置 這個是呼叫微信的重要憑證,你想要掉用微信的介面 必須先得把簽名通過,這個方法直接放到javascript裡 wx.config({

小程式webview呼叫的“曲折”思路

自上一篇遇到webview中沒有返回按鈕之後,雖然跳出坑了。解決方案:《小程式webview跳轉頁面後沒有返回按鈕完美解決方案》 但是,小程式踩坑之路並沒有結束。在公眾號網頁中通過配置APPID和app

呼叫JSSDK介面,實現自定義分享功能

1,你需有一個公眾號,沒有不用談自定義分享內容了; 2,公眾號上把你的域名增加到“JS介面安全域名”: 3,我這功能是基於thinkphp3.1實現的,按下圖上網下包放在對應該目錄下: 4,修改核心公共檔案:functions.php 加入程式碼: /*

php 呼叫

類庫程式碼: <?phpclass JSSDK { private $appId; private $appSecret; public function __construct($appId, $appSecret) { $this->appId = $appId; $this->a

JSSDK呼叫原生的功能上傳圖片儲存到自己的伺服器中

第一件事首先是微信的選擇圖片功能,就是微信發朋友圈選擇圖片的時候那個介面 //呼叫微信拍照功能 wx.chooseImage({ count: 1,

Android呼叫

在自己的應用中開啟微信掃一掃程式碼: private void toWeChatScan() { try { //利用Intent開啟微信

呼叫的步驟(ASP實現方式)

1.微信服務號(或公眾號)需要通過認證 2.點選“公眾號設定”-“功能設定”,在“JS介面安全域名”處填寫上域名,二級域名也可以的,注意該域名必須是備案過的,否則無效。 3.開始寫程式碼上傳到上述設定的安全域名下面。例如設定的安全域名是test.bzzs

JAVA呼叫

java微信開發官方文件地址:https://mp.weixin.qq.com/wiki/home/ 開發微信付款和掃一掃,必須有內網穿透,最好有伺服器 微信開發掃一掃開發過程: // WeixinUtil.getAccess_token此工具類,將放在下面一點。 這裡是

網頁開發的一些感想,順便附上呼叫史上最簡便的方法 5行程式碼實現H5 HTML5最簡便的辦法

呼叫範例完整程式碼下載: csdn的這個博文寫的有點囉嗦,建議移步這裡: 在網頁上點一個按鈕或者連結呼叫微信掃一掃然後返回結果我們繼續處理,很多人應該都會有這樣的需求,不過微信對這個空子比較嚴格,需要你的網頁有簽名,而簽名生成需要有一個微信公眾號的appk

功能呼叫

後臺獲取簽名程式碼: package com.epoch.wap.common; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.s

Android呼叫和支付寶

微信在自己的應用中開啟微信掃一掃程式碼:private void toWeChatScan() { try { //利用Intent開啟微信 Uri uri =

小程式呼叫

//獲取應用例項 var app = getApp()Page({ data: { show: "", }, onLoad: function () { console.log('o