成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識庫 > Html5調(diào)用企業(yè)微信的實(shí)現(xiàn)

Html5調(diào)用企業(yè)微信的實(shí)現(xiàn)

熱門標(biāo)簽:西安金倫外呼系統(tǒng) 智能語音電銷機(jī)器人客戶端 通遼地圖標(biāo)注app 地圖標(biāo)注沿海城市房價(jià) 高德地圖標(biāo)注廁所 威海語音外呼系統(tǒng)平臺 地圖標(biāo)注員工作內(nèi)容 江西ai電銷機(jī)器人如何 中國地圖標(biāo)注城市的

前言

基于H5的頁面調(diào)通 企業(yè)微信的API (已調(diào)通demo)

一、環(huán)境

企業(yè)微信管理員 添加應(yīng)用 ,地址指向H5程序的地址。(企業(yè)微信通過內(nèi)部游覽器訪問你自己發(fā)布出來的web端的手機(jī)項(xiàng)目,不做本文重點(diǎn))

二、使用步驟

1.js引用

https://work.weixin.qq.com/api/doc/90000/90136/92455

<script src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>

2.config接口注入權(quán)限驗(yàn)證配置

代碼如下:

wx.config({
    beta: true,// 必須這么寫,否則wx.invoke調(diào)用形式的jsapi會(huì)有問題
    debug: true, // 開啟調(diào)試模式,調(diào)用的所有api的返回值會(huì)在客戶端alert出來,若要查看傳入的參數(shù),可以在pc端打開,參數(shù)信息會(huì)通過log打出,僅在pc端時(shí)才會(huì)打印。
    appId: '', // 必填,企業(yè)微信的corpID
    timestamp: , // 必填,生成簽名的時(shí)間戳
    nonceStr: '', // 必填,生成簽名的隨機(jī)串
    signature: '',// 必填,簽名,見 附錄-JS-SDK使用權(quán)限簽名算法
    jsApiList: [] // 必填,需要使用的JS接口列表,凡是要調(diào)用的接口都需要傳進(jìn)來
});

其中 appId 在企業(yè)微信上獲取,timestamp 時(shí)間戳,nonceStr 一個(gè)16位的隨機(jī)字符串,signature 這個(gè)簽名是最復(fù)雜的 (下面有講到配置方法)。

signature 這個(gè) 簽名 需要的如下(官網(wǎng)文檔)

參與簽名的參數(shù)有四個(gè): noncestr(隨機(jī)字符串), jsapi_ticket(如何獲取參考“獲取企業(yè)jsapi_ticket”以及“獲取應(yīng)用的jsapi_ticket接口”), timestamp(時(shí)間戳), url(當(dāng)前網(wǎng)頁的URL, 不包含#及其后面部分)

將這些參數(shù)使用URL鍵值對的格式 (即 key1=value1&key2=value2…)拼接成字符串string1。
有兩個(gè)注意點(diǎn):1. 字段值采用原始值,不要進(jìn)行URL轉(zhuǎn)義;2. 必須嚴(yán)格按照如下格式拼接,不可變動(dòng)字段順序。

jsapi_ticket=JSAPITICKET&noncestr=NONCESTR&timestamp=TIMESTAMP&url=URL
然后對string1作sha1加密即可。
示例 :

假如有如下參數(shù):

noncestr=Wm3WZYTPz0wzccnW
jsapi_ticket=sM4AOVdWfPE4DxkXGEs8VMCPGGVi4C3VM0P37wVUCFvkVAy_90u5h9nbSlYy3-Sl-HhTdfl2fzFy1AOcHKP7qg
timestamp=1414587457
url=http://mp.weixin.qq.com?params=value
步驟1. 將這些參數(shù)拼接成字符串string1:

jsapi_ticket=sM4AOVdWfPE4DxkXGEs8VMCPGGVi4C3VM0P37wVUCFvkVAy_90u5h9nbSlYy3-Sl-HhTdfl2fzFy1AOcHKP7qg&noncestr=Wm3WZYTPz0wzccnW&timestamp=1414587457&url=http://mp.weixin.qq.com?params=value
步驟2. 對string1進(jìn)行sha1簽名,得到signature:

0f9de62fce790f9a083d5c99e95740ceb90c27ed

下面我來一一實(shí)現(xiàn)這些參數(shù)

3.生成access_token

請求方式: GET(HTTPS) 請求地址: https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=ID&corpsecret=SECRET (其中 corpid 跟 corpsecret 都是通過企業(yè)微信獲?。?/p>

提示:這個(gè)get 請求 我一開始寫在前端js中,用Hbuilder(開發(fā)軟件)開發(fā)測試時(shí),能正常返回信息,但是到游覽器才意識到有 跨域問題。后來將獲取access_token 的方法放到了 后端獲取 ,在丟給前臺就可以了。

			//前端
			$.ajax("自己的url", {
				dataType: 'json', //服務(wù)器返回json格式數(shù)據(jù)
				type: 'post', //HTTP請求類型
				headers: {
					'Content-Type': 'application/json'
				},
				
				//contentType: "application/json;charset=utf-8",
				success: function(data) {
					
					var sad = JSON.parse(data.d);
					 
					var token = sad.access_token;

					sunc(token);
				},
				error: function(xhr, type, errorThrown) {
					//異常處理;
					alert("進(jìn)錯(cuò)誤了");
					

				}
			})

		//后端 
		 public string test()
        {
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=自己的corpid&corpsecret=自己的corpsecret");
            request.Method = "GET";
            request.ContentType = "text/html;charset=UTF-8";
            //接受返回來的數(shù)據(jù)
            HttpWebResponse response = (HttpWebResponse)request.GetResponse();
            Stream stream = response.GetResponseStream();
            StreamReader streamReader = new StreamReader(stream, Encoding.GetEncoding("utf-8"));
            string retString = streamReader.ReadToEnd();
            streamReader.Close();
            stream.Close();
            response.Close();

            return retString;
        }

就實(shí)現(xiàn)了GET 請求獲取 access_token

4.生成jsapi_ticket

請求方式:GET(HTTPS)
請求URL:https://qyapi.weixin.qq.com/cgi-bin/ticket/get?access_token=ACCESS_TOKEN

與獲取access_token 相同 要放在后臺獲取 參數(shù)就是
access_token

5.生成noncestr 隨機(jī)字符串 (len隨機(jī)字符串長度)(方法是復(fù)制過來的)

//隨機(jī)字符串
		function randomString(len) {
			len = len || 32;
			var $chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'; /****默認(rèn)去掉了容易混淆的字符oOLl,9gq,Vv,Uu,I1****/
			var maxPos = $chars.length;
			var pwd = '';
			for (i = 0; i < len; i++) {
				pwd += $chars.charAt(Math.floor(Math.random() * maxPos));
			}
			return pwd;
		}

5.生成timestamp時(shí)間戳

var timestamp = Date.parse(new Date());

6.生成signature 簽名

					var timestamp = Date.parse(new Date());
					// noncestr 隨機(jī) 字符串
					var noncestr = randomString(16);
					var qiname = getSignature(resyltt, noncestr, timestamp);


//獲取簽名
			function getSignature(ticket, noncestr, timestamp) {
				var url = window.location.href.split("#")[0];
				var jsapi_ticket = "jsapi_ticket=" + ticket + "&noncestr=" + noncestr + "&timestamp=" + timestamp +
					"&url=" + url;
			

				return sha1(jsapi_ticket);
			}
			// 字符串加密成 hex 字符串
			function sha1(s) {
				var data = new Uint8Array(encodeUTF8(s))
				var i, j, t;
				var l = ((data.length + 8) >>> 6 << 4) + 16,
					s = new Uint8Array(l << 2);
				s.set(new Uint8Array(data.buffer)), s = new Uint32Array(s.buffer);
				for (t = new DataView(s.buffer), i = 0; i < l; i++) s[i] = t.getUint32(i << 2);
				s[data.length >> 2] |= 0x80 << (24 - (data.length & 3) * 8);
				s[l - 1] = data.length << 3;
				var w = [],
					f = [
						function() {
							return m[1] & m[2] | ~m[1] & m[3];
						},
						function() {
							return m[1] ^ m[2] ^ m[3];
						},
						function() {
							return m[1] & m[2] | m[1] & m[3] | m[2] & m[3];
						},
						function() {
							return m[1] ^ m[2] ^ m[3];
						}
					],
					rol = function(n, c) {
						return n << c | n >>> (32 - c);
					},
					k = [1518500249, 1859775393, -1894007588, -899497514],
					m = [1732584193, -271733879, null, null, -1009589776];
				m[2] = ~m[0], m[3] = ~m[1];
				for (i = 0; i < s.length; i += 16) {
					var o = m.slice(0);
					for (j = 0; j < 80; j++)
						w[j] = j < 16 ? s[i + j] : rol(w[j - 3] ^ w[j - 8] ^ w[j - 14] ^ w[j - 16], 1),
						t = rol(m[0], 5) + f[j / 20 | 0]() + m[4] + w[j] + k[j / 20 | 0] | 0,
						m[1] = rol(m[1], 30), m.pop(), m.unshift(t);
					for (j = 0; j < 5; j++) m[j] = m[j] + o[j] | 0;
				};
				t = new DataView(new Uint32Array(m).buffer);
				for (var i = 0; i < 5; i++) m[i] = t.getUint32(i << 2);

				var hex = Array.prototype.map.call(new Uint8Array(new Uint32Array(m).buffer), function(e) {
					return (e < 16 ? "0" : "") + e.toString(16);
				}).join("");
				return hex;
			}


			function encodeUTF8(s) {
				var i, r = [],
					c, x;
				for (i = 0; i < s.length; i++)
					if ((c = s.charCodeAt(i)) < 0x80) r.push(c);
					else if (c < 0x800) r.push(0xC0 + (c >> 6 & 0x1F), 0x80 + (c & 0x3F));
				else {
					if ((x = c ^ 0xD800) >> 10 == 0) //對四字節(jié)UTF-16轉(zhuǎn)換為Unicode
						c = (x << 10) + (s.charCodeAt(++i) ^ 0xDC00) + 0x10000,
						r.push(0xF0 + (c >> 18 & 0x7), 0x80 + (c >> 12 & 0x3F));
					else r.push(0xE0 + (c >> 12 & 0xF));
					r.push(0x80 + (c >> 6 & 0x3F), 0x80 + (c & 0x3F));
				};
				return r;
			}

6.信息填入config

			wx.config({
						beta: true, // 必須這么寫,否則wx.invoke調(diào)用形式的jsapi會(huì)有問題
						debug: true, // 開啟調(diào)試模式,調(diào)用的所有api的返回值會(huì)在客戶端alert出來,若要查看傳入的參數(shù),可以在pc端打開,參數(shù)信息會(huì)通過log打出,僅在pc端時(shí)才會(huì)打印。
						appId: 'appId', // 必填,企業(yè)微信的corpID
						timestamp: timestamp, // 必填,生成簽名的時(shí)間戳
						nonceStr: noncestr, // 必填,生成簽名的隨機(jī)串
						signature: qiname, // 必填,簽名,見 附錄-JS-SDK使用權(quán)限簽名算法
						jsApiList: ['chooseImage'] // 必填,需要使用的JS接口列表,凡是要調(diào)用的接口都需要傳進(jìn)來
					});

到這里config 就配置完成(下面就是寫的一個(gè)簡單的 彈出手機(jī)的相冊跟拍照功能)(已測試正常調(diào)用OK)。

//測試API 接口使用

	function hreftestce() {
			alert("開始執(zhí)行");
			wx.chooseImage({
				success: function(res) {
					images.localId = res.localIds;
					alert('已選擇 ' + res.localIds.length + ' 張圖片');
				}
			});

		}

到此這篇關(guān)于Html5調(diào)用企業(yè)微信的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Html5調(diào)用企業(yè)微信內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持腳本之家!

標(biāo)簽:青海 眉山 營口 北海 晉中 河池 崇左 阜陽

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Html5調(diào)用企業(yè)微信的實(shí)現(xiàn)》,本文關(guān)鍵詞  Html5,調(diào)用,企業(yè),微信,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Html5調(diào)用企業(yè)微信的實(shí)現(xiàn)》相關(guān)的同類信息!
  • 本頁收集關(guān)于Html5調(diào)用企業(yè)微信的實(shí)現(xiàn)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    国产天堂资源| 三级黄在线观看| 97碰在线观看| 26uuu亚洲电影在线观看| 成年视频在线观看| 黄色免费观看| 成人国产精品日本在线| 蜜桃视频在线观看成人| 黄色三级网站在线观看| 亚洲情侣在线| 手机看片久久久| 亚洲日本一区二区| 热re99久久精品国99热蜜月| 欧美另类videos| 亚洲黄网站在线观看| 精品毛片在线观看| 91精品国产91久久久久福利| 国产一区二区三区av电影| 久久精品2019中文字幕| 中文先锋资源| 亚洲精品一区二区三区不| 成人精品鲁一区一区二区| 噼里啪啦在线中文观看| 国产在视频线精品视频| 色天天久久综合婷婷女18| 国产精品7m视频| 男人午夜视频在线观看| 91高清视频在线观看| 亚洲国产欧美一区二区三区久久| 在线播放性xxx欧美| 超碰在线播放97| 欧美黑人一区二区三区| 亚洲黄色尤物视频| 精品亚洲国产成av人片传媒| 99久久久久国产精品免费| 无罩大乳的熟妇正在播放| 成人中文字幕+乱码+中文字幕| 亚洲精品mv在线观看| 日韩精品一区二区三区四区五区| 在线看日韩精品电影| 欧美午夜丰满在线18影院| 日韩精品一区二区三区高清免费| 在线免费观看日韩av| 搡老女人一区二区三区视频tv| 91精品久久久久久久久久另类| 猛男gaygay欧美视频| 久久夜色精品国产| 三级视频在线播放| 三级在线看中文字幕完整版| 一本色道久久综合亚洲91| 人妻有码中文字幕| 日本少妇色视频| 精品久久综合| 91一区二区三区在线| 亚洲人人精品| 日韩一区二区三区视频| 韩国视频一区二区| 午夜偷拍福利视频| 成人国产精品一区二区| 羞羞视频网站| 色又黄又爽网站www久久| 嫩模私拍啪啪| 色综合久久中文字幕综合网小说| 91精品中文字幕一区二区三区| 91欧美日韩在线| 国产高清视频在线观看| 精品国产乱码久久久久久久久| 国内精品久久久久久不卡影院| 国产农村妇女毛片精品| 久久免费看av| 国产一区在线看| 老牛影视av一区二区在线观看| 欧美日韩一区二区电影| 国产chinasex对白videos麻豆| 免费观看的毛片| 黄色成人av在线| 黄色网址在线播放| 69成人精品免费视频| 9a蜜桃久久久久久免费| 亚洲最新永久在线观看| 国产精品正在播放| 久久视频国产精品免费视频在线| 精品剧情在线观看| 3dmax动漫人物在线看| 午夜日韩av| 国产毛片久久久久久久| 欧美成人se01短视频在线看| 国产精品入口麻豆| 巨大荫蒂视频欧美另类大| 成人一区二区三区中文字幕| 国产精品区在线观看| 日韩少妇内射免费播放| 极品校花啪啪激情久久| 波多野结衣中文一区| 影音先锋中文一区| 97色在线视频观看| 综合网在线观看| 九九综合九九综合| 天涯成人国产亚洲精品一区av| 日韩精品免费一区二区三区竹菊| 黄色录像一级片| 东方伊人免费在线观看| 国产精品66| h视频在线观看免费网站| 涩涩屋成人免费视频软件| 国产videos| av电影在线不卡| 国内爆初菊对白视频| 精品一区二区三区四区在线| 国产成人综合亚洲欧美在| 蜜臀av免费观看| 欧美黄色一区二区| 欧美性猛交xxxx乱大交hd| 在线视频一区二区| 午夜羞羞小视频在线观看| 中文字幕av一区二区三区谷原希美| 久久综合给合久久狠狠色| 久久精品国产亚洲aⅴ| 欧美调教sm| 国产伦精品一区二区三区照片| 日韩手机在线观看| 青青草在线播放| 欧美日韩成人免费视频| 国产又大又黑又粗免费视频| 国产不卡av在线免费观看| 日韩精品一级二级| 日本熟妇成熟毛茸茸| 天堂网2014av| av资源在线看片| 91视频啊啊啊| 国产一区二区黄| 99国内精品久久久久久久软件| 亚洲图片有声小说| xxxx在线播放| 免费大片黄在线观看| 丝袜美腿亚洲综合| 香港三级韩国三级日本三级| 欧美黑人做爰爽爽爽| 国产无遮挡在线视频免费观看| 国产性做久久久久久| 粉嫩91精品久久久久久久99蜜桃| 日韩欧美亚洲综合| 国产91沈先生在线播放| 综合亚洲视频| 91免费版看片| 欧美精品久久久久久久| 高h调教冰块play男男双性文| 福利视频免费在线观看| 国产一区二区三区四区五区在线| 免费黄网站在线观看| 一级毛片电影| 成年女人免费毛片视频永久| 日本一区二区三区www| 国产伦精品一区二区三区视频| av在线二区| 青青视频在线免费观看| 亚洲精品影院在线| 四虎影院一区二区三区| 天天插天天干| 男女男精品视频站| 久久久一本二本三本| 国产伦精品一区二区三区视频青涩| 先锋男人资源站| 在线色视频网| 天码人妻一区二区三区在线看| 影音先锋在线影院| 亚洲一区二区三区午夜| 亚洲欧美在线一区二区| 亚洲大片免费观看| 波多野结衣激情视频| 91se在线观看| 国内精品久久久久久久久电影网| 影音先锋国产资源| 天美一区二区三区| 青青青在线免费观看| 精品国产乱码久久久| 天天摸天天舔天天操| 国产精品video| 色综合夜色一区| 男女视频一区二区三区| 亚洲 欧美 激情 小说 另类| 欧美激情综合色综合啪啪五月| 日本视频在线| 日韩亚洲国产中文字幕| 亚洲一区免费| 色版视频在线观看| 欧美色欧美亚洲高清在线视频| 久久久久久久久久91| 在线看欧美日韩| 视频在线观看国产精品| 精品剧情v国产在线观看在线| 国产三级伦理片| 狠狠色丁香久久婷婷综合_中| aa视频在线观看| 久久久人成影片一区二区三区观看| 日本成人a网站| 欧美激情性xxxxx| av首页在线| 午夜看片在线免费| 99精品视频一区二区三区| 久草视频国产| 天堂免费在线视频| 日本精品视频在线| 秋霞网一区二区| 先锋影音在线播放av| 三级视频在线播放| 亚洲成人1234| 久久精品网址| 成人高清在线观看视频| 免费影视观看网站入口| 免费看av软件| 久久久久久久久久久综合| 一区二区三区视频网站| 国产成人免费91av在线| 性生生活性生交a级| 国产麻豆麻豆| 日韩xxxxxxxxx| 亚洲va中文在线播放免费| 国产裸体写真av一区二区| 欧美大片va欧美在线播放| 国产精品久久久久久69| 日本在线免费观看| 日本久久久久久久久久| 成人网中文字幕| 高清免费观看在线| yourporn在线观看视频| 日韩成人影音| 国产亚洲第一的欧洲日产| 久久噜噜色综合一区二区| 日韩av影视综合网| 超碰最新在线| 天天做天天摸天天爽天天爱| 国产精品一级视频| 国产成人在线中文字幕| 2023国产一二三区日本精品2022| 国产精品99久久久久久董美香| 美女爆乳18禁www久久久久久| 国产一区不卡在线| 国产伦精品一区二区| 黄视频在线观看免费| 97精品视频在线播放| 大片免费在线观看| 免费的黄网站在线观看| 美女又黄又免费| 久草福利资源在线观看| 久久日韩粉嫩一区二区三区| 日韩成人精品在线| 福利视频一区二区三区| 日本成人小视频| 秋霞毛片久久久久久久久| 欧美日韩国产精品一区二区亚洲| 日本久久精品一区二区| 高清亚洲成在人网站天堂| www.日韩大片| 国产伦精品一区二区三区高清版禁| www国产91| www.jizz在线观看| 国产寡妇亲子伦一区二区三区四区| 久操久操久操| 喷白浆一区二区| 日韩一区国产在线观看| 免费av高清| 色爱精品视频一区| 久久久久久久久久久黄色| 国产成人精品一区二区三区免费| crdy在线观看欧美| 久久精品福利视频| 波多野结衣之无限发射| 国产ts一区| 亚洲国产成人av好男人在线观看| av在线资源网| 最近中文字幕mv免费高清电影| 先锋资源av在线| 粉嫩欧美一区二区三区| 丁香花高清电影在线观看完整版| 久久这里只有精品8| 久草在线视频网| 一区在线免费| wwwwxxxx国产| ga∨成人网| 亚洲一区有码| 91制片厂在线| 在线成人直播| 精品在线观看入口| 亚洲国产成人一区二区三区| 蜜臀久久精品久久久用户群体| 久久综合色一本| 噜噜噜躁狠狠躁狠狠精品视频| 日本高清一区二区视频| 黄页网站在线播放| 精品在线播放免费| 91免费精品国自产拍在线不卡| 欧美性色黄大片手机版| 精品毛片久久久久久| 粗大的内捧猛烈进出在线视频| 欧美黑人激情| 国产电影一区二区| www免费在线观看视频| 国产成人精品www牛牛影视| 激情国产一区| 久久综合丝袜日本网| 从欧美一区二区三区| 日韩av黄色网址| xxx电影网| 欧洲一区二区视频| 精品国产污网站| 美国毛片一区二区三区| 国产精品国产精品国产专区| 国产中文在线观看| 欧美精品在线网站| 国产欧美久久一区二区| 国产剧情在线观看一区| 欧美成人精品1314www| 国产免费一区二区三区四在线播放| 91精品久久久久久久久久久久| av不卡在线看| 夜夜狠狠擅视频| 91av成人在线| 蜜桃av一区二区在线观看| 全免费一级毛片免费看| 精品亚洲欧美一区| 99成人在线观看| 国产精品99一区二区三| 亚洲电影在线| 成人在线视频免费| 亚洲福利视频一区二区| 啊啊啊好爽视频| 国产成人高清|