国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

Vue開發(fā)Html5微信公眾號的步驟

來源:懂視網 責編:小采 時間:2020-11-27 21:58:59
文檔

Vue開發(fā)Html5微信公眾號的步驟

Vue開發(fā)Html5微信公眾號的步驟:一、調起微信支付 在微信瀏覽器里面打開H5網頁中執(zhí)行JS調起支付,WeixinJSBridge內置對象在其他瀏覽器中無效。具體參考官方文檔:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_7&index=6 (1)大致流程: (
推薦度:
導讀Vue開發(fā)Html5微信公眾號的步驟:一、調起微信支付 在微信瀏覽器里面打開H5網頁中執(zhí)行JS調起支付,WeixinJSBridge內置對象在其他瀏覽器中無效。具體參考官方文檔:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_7&index=6 (1)大致流程: (
具體參考官方文檔:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_7&index=6

(1)大致流程:

(2)調用代碼示例:

mounted(){
 if (typeof WeixinJSBridge == "undefined") {
 if (document.addEventListener) {
 document.addEventListener(
 "WeixinJSBridgeReady",
 this.onBridgeReady,
 false
 );
 } else if (document.attachEvent) {
 document.attachEvent(
 "WeixinJSBridgeReady",
 this.onBridgeReady
 );
 document.attachEvent(
 "onWeixinJSBridgeReady",
 this.onBridgeReady
 );
 }
 } else {
 this.onBridgeReady();
 }
}
methods:{
 // 調起微信支付
 onBridgeReady() {
 const pay_params = this.payInfo; //創(chuàng)建支付返回的簽名信息
 WeixinJSBridge.invoke(
 "getBrandWCPayRequest",
 {
 appId: pay_params.appId, //公眾號名稱,由商戶傳入
 timeStamp: pay_params.timeStamp, //時間戳,自1970年以來的秒數(shù)
 nonceStr: pay_params.nonceStr, //隨機串
 package: pay_params.package,
 signType: pay_params.signType, //微信簽名方式:
 paySign: pay_params.paySign //微信簽名
 },
 res => {
 if (res.err_msg == "get_brand_wcpay_request:ok") {
 // 校驗支付
 alert('支付成功');
 
 //do something...
 
 }else if(res.err_msg == "get_brand_wcpay_request:cancel"||res.err_msg == "get_brand_wcpay_request:fail"){
 alert('支付失敗');
 }
 }
 );
 },
}

二、實現(xiàn)Web簽名+截圖網頁+上傳截圖

web簽名使用 jsignature 實現(xiàn),由于jsignature 基于Jquery實現(xiàn),需要引入Jquery。簽名完成后,使用 html2canvas 實現(xiàn)網頁全屏截圖。截圖成功后,由于Canvas的 toDataURL方法會根據(jù)簽名的復雜程度返回不同長短的Base64,過長的Base64傳到后臺會增加服務器負擔,所以需要轉成平時input type=file上傳的圖片格式

代碼示例:

 import jSignature from "jSignature"; 
 import html2canvas from 'html2canvas';
 
 mounted() {
 //通過setTimeout把代碼丟到初始化最后執(zhí)行
 this.Timer = setTimeout(() => {
 // Signature 簽名Dom容器
 this.$SignDom = $("#Signature").jSignature({
 height: "100%",//占容器100%
 width: "100%"
 });
 }, 0);
 },
 methods:{
 //清空簽名
 resetSign() {
 this.$SignDom && this.$SignDom.jSignature("reset");
 },
 // 獲取簽名
 async getSign() {
 if (!this.$SignDom) return;
 
 if (!this.$SignDom.jSignature("getData", "native").length) {
 alert("請?zhí)顚懩暮灻?");
 return;
 }
 // jSignature - 獲取簽名Base64(注意:該Base64指簽名那一塊,不是整個頁面)
 
 // let datapair = this.$SignDom.jSignature("getData", "image");
 // let SignSrc = "data:" + datapair[0] + "," + datapair[1];
 
 // html2canvas截取整個頁面
 const HTML_CANVAS = await html2canvas(document.getElementById('app'));
 let SignSrc = HTML_CANVAS.toDataURL();
 
 // Base64 轉 Blob 實現(xiàn)提交圖片
 let uploadImg = this.dataURLtoFile(SignSrc);
 
 let param = new FormData(); //創(chuàng)建form對象
 param.append("file", uploadImg,'signImage.png'); 
 
 // send request...
 },
 // Base64轉Blob上傳圖片
 dataURLtoFile(dataurl) {
 var arr = dataurl.split(","),
 mime = arr[0].match(/:(.*?);/)[1],
 bstr = atob(arr[1]),
 n = bstr.length,
 u8arr = new Uint8Array(n);
 while (n--) {
 u8arr[n] = bstr.charCodeAt(n);
 }
 return new Blob([u8arr],{
 type: mime,
 });
 }

 },
 destroyed() {
 //清理setTimeout
 this.Timer && clearTimeout(this.Timer);
 }

三、如何在npm run dev下,手機打開H5公眾號測試

(1) 修改package.json,在dev 后面加上--host your IP

示例:

"scripts": {
 "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js --host 192.167.1.99",
 },

(2) dev跑起來之后,通過文件傳輸助手發(fā)給手機,在手機打開http://your IP:8080/即可

(3) 打開后就可以在手機上測試支付或wx-js-sdk等功能啦!

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

Vue開發(fā)Html5微信公眾號的步驟

Vue開發(fā)Html5微信公眾號的步驟:一、調起微信支付 在微信瀏覽器里面打開H5網頁中執(zhí)行JS調起支付,WeixinJSBridge內置對象在其他瀏覽器中無效。具體參考官方文檔:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_7&index=6 (1)大致流程: (
推薦度:
標簽: 微信的 方法 VUE
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 久久亚洲精品国产亚洲老地址 | 日本a中文字幕 | 91情侣在线偷精品国产 | 欧美性猛交一区二区三区精品 | 免费一级a毛片在线播放视 免费一区二区 | 国产精品欧美韩国日本久久 | 欧美日韩在线国产 | 99精品视频在线观看免费播放 | 中文亚洲欧美日韩无线码 | 日韩伦理亚洲欧美在线一区 | 国产精品国产三级国产普通话一 | 日本不卡视频在线观看 | 国产日产欧美一区二区三区 | 国产精品视频久久久 | 亚洲性一区 | 亚洲欧美另类第一页 | 久久亚洲精品国产亚洲老地址 | 91精品一区二区三区在线观看 | 午夜免费啪啪 | 国产一级特黄高清免费下载 | 一区二区手机视频 | 欧美日韩无 | 亚洲欧美日韩综合精品网 | 日产精品久久久一区二区 | 国产91成人| 国产精品1000部在线观看 | 国产在线每日更新 | 欧美三级在线看 | 国产精品久久久久久久久鸭 | 欧美日本免费一区二区三区 | 精品一区二区三区五区六区七区 | 日韩中文字幕第一页 | 国产精品第一区在线观看 | 岛国一区二区 | 伊人久久91 | 在线视频 中文字幕 | 99在线视频观看 | 欧美xxxxxbbbb| 欧美国产免费 | 国产欧美日本亚洲精品五区 | 国产成人高清亚洲一区久久 |