微信網頁js操作(微信網頁js操作流程)

本文目錄一覽:

微信小程序wxs的使用(當頁面數據渲染前添加js操作)

小程序的wxs功能可以讓wsmxl可以調用和編寫js,基本上wxs和JS無關係,只是語法形式很相似。

如下寫了兩個關於時間的函數,並將它們導出,

wxs module=”m1″

var getMax = function(flightDate) {

    var now = getDate().getDate();

    var flDate = getDate(flightDate).getDate();

    if( now flDate ){

      return ‘+1’;

    }else{

      return ”;

    }

}

var formartTime = function(flightDate,format){

  if(flightDate){

    var realDate = getDate(flightDate);

    function timeFormat(num) {

      return num 10 ? ‘0’ + num : num;

    }

    var date = {

      “Y”: timeFormat(realDate.getFullYear()),

      “M”: timeFormat(realDate.getMonth() + 1),

      “d”: timeFormat(realDate.getDate()),

      “h”: timeFormat(realDate.getHours()),

      “m”: timeFormat(realDate.getMinutes()),

      “s”: timeFormat(realDate.getSeconds()),

      “q”: Math.floor((realDate.getMonth() + 3) / 3),

      “S”: realDate.getMilliseconds(),

    };

    if (!format) {

      format = “yyyy-MM-dd hh:mm:ss”;

    }

    if( format == ‘hh:mm’ ){

        return date.h+’:’+date.m;

    }else{

        return date.h+’:’+date.m;

    }

  }else{

    return false;

  }

}

module.exports.getMax = getMax;

module.exports.formartTime = formartTime;

/wxs

可在頁面添加如下使用:

m1.formartTime();  m1.getMax();

公眾號h5中使用微信JS-SDK(個人筆記)

通過使用微信JS-SDK,網頁開發者可藉助微信高效地使用拍照、選圖、語音、位置等手機系統的能力,同時可以直接使用微信分享、掃一掃、卡券、支付等微信特有的能力,為微信用戶提供更優質的網頁體驗。

例子為在vue中使用微信JS-SDK,步驟如下:

先登錄微信公眾平台進入“公眾號設置”的“功能設置”里填寫“JS接口安全域名”。

備註:登錄後可在“開發者中心”查看對應的接口權限。

插件方式:

引入js文件方式:

在需要調用JS接口的頁面引入如下JS文件,(支持https):

如需進一步提升服務穩定性,當上述資源不可訪問時,可改訪問: (支持https)。

掛載到Vue原型

與使用 JS-SDK 配置方式相同,所有需要使用開放標籤的頁面必須先注入配置信息,並通過openTagList字段申請所需要的開放標籤,否則將無法使用(同一個 url 僅需調用一次)。開放標籤的申請和 JS 接口的申請相互獨立,因此是可以同時申請的。

配置成功之後,就可以使用相關的api了。例子為微信支付。

3.分享出去的是鏈接,不是卡片的原因及解決方案:

原因: 微信開放全域名訪問後出現的限制。

解決方法:

這會導致別人通過分享卡進來的頁面不是自己配置的頁面。

解決辦法: 把路由hash模式改成history模式。(讓後端把匹配不到的頁面重定向到首頁)

開發者需要配合使用微信開放平台提供的 SDK 進行一次性訂閱消息授權請求接入。正確接入 SDK 後,開發者移動應用會在終端本地 拉起微信應用進行訂閱消息授權 ,微信用戶確認後微信將拉起開發者移動應用,並帶上授權用戶 openid 等信息。

使用方式: 引導用戶打開 ;appid=wxaba38c7f163da69bscene=1000template_id=1uDxHNXwYQfBmXOfPJcjAS3FynHArD8aWMEFNRGSbCcredirect_url=http%3a%2f%2fsupport.qq.comreserved=test#wechat_redirect 鏈接。

可拉起微信打開一次性消息訂閱授權頁:

使用方式:

如需添加參數,可在redirect_uri後面進行拼接,授權成功之後會帶回來。

其他問題請參考:

JS交互微信之JSAPI支付

本篇為 JS交互微信系列篇 的第四篇 微信JSAPI支付 ,記錄在微信內置瀏覽器內用調用微信支付過程。

JSAPI支付是用戶在微信中打開商戶的H5頁面,商戶在H5頁面通過調用微信支付提供的JSAPI接口調起微信支付模塊完成支付。

要擁有兩個賬號:

要開通產品中心的JSAPI支付。然後 產品中心=開發配置=支付配置=公眾號支付配置 綁定支付授權目錄,寫已通過ICP備案的域名。

另外,要在ip白名單中,配置測試地址ip和線上生產地址ip,不然各種回調都會失敗!

由於在微信內支付需要獲取用戶的 openid ,要獲取它則必須通過網頁授權配置。在公微信公眾平台中, 公眾號設置=功能設置=網頁授權域名 中按要求填寫。

在支付流程方面,重點依然都在後端處理,前端方面步驟比較簡單。本文只敘述前端內容。

在將要進入支付的前一頁面,直接接入微信授權,然後跳轉進要支付的那個頁面。舉個例子:有a、b兩個頁面,在b頁面用到支付,b頁面由a頁面跳轉而來。那麼在a頁面跳b頁面的時候,別直接跳轉b的url,而是跳轉到:

{appId}redirect_uri={b.html}response_type=codescope=snsapi_base#wechat_redirect

我們注意到,這裡有這兩個需要自己寫的參數: appid 和 redirect_uri ,意義是:

另外,還有一個注意的點是, b.html這個url我們要進行encode轉碼,不然地址解析可能會出現問題!

上一步執行完後,在微信瀏覽器中,我們會得到一個鏈接,類似:

b.html?code={code}state=#/

在此處,我們得到了一個code值,這就是我們獲取 openid 的憑證了。

獲取方法當然是把值傳給後台,後台去處理啦~

在上一步中,我們拿到code值後,就可以提交一些信息給後端了,比如商品相關屬性、總價等,另外加上code值,傳給後端。後端一頓操作後,返回給前端。我們需要的參數如下(後端返回下面這些參數):

上個步驟拿到需要交互微信的參數後,就開始調用微信的支付接口了,如下:

至此,調用微信JSAPI來完成在微信內的支付就完成了。

原創文章,作者:Z5K66,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/127882.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
Z5K66的頭像Z5K66
上一篇 2024-10-03 23:16
下一篇 2024-10-03 23:16

相關推薦

  • JS Proxy(array)用法介紹

    JS Proxy(array)可以說是ES6中非常重要的一個特性,它可以代理一個數組,監聽數據變化並進行攔截、處理。在實際開發中,使用Proxy(array)可以方便地實現數據的監…

    編程 2025-04-29
  • Python棧操作用法介紹

    如果你是一位Python開發工程師,那麼你必須掌握Python中的棧操作。在Python中,棧是一個容器,提供後進先出(LIFO)的原則。這篇文章將通過多個方面詳細地闡述Pytho…

    編程 2025-04-29
  • Python操作數組

    本文將從多個方面詳細介紹如何使用Python操作5個數組成的列表。 一、數組的定義 數組是一種用於存儲相同類型數據的數據結構。Python中的數組是通過列表來實現的,列表中可以存放…

    編程 2025-04-29
  • Python操作MySQL

    本文將從以下幾個方面對Python操作MySQL進行詳細闡述: 一、連接MySQL數據庫 在使用Python操作MySQL之前,我們需要先連接MySQL數據庫。在Python中,我…

    編程 2025-04-29
  • Python代碼實現迴文數最少操作次數

    本文將介紹如何使用Python解決一道經典的迴文數問題:給定一個數n,按照一定規則對它進行若干次操作,使得n成為迴文數,求最少的操作次數。 一、問題分析 首先,我們需要了解迴文數的…

    編程 2025-04-29
  • Python磁盤操作全方位解析

    本篇文章將從多個方面對Python磁盤操作進行詳細闡述,包括文件讀寫、文件夾創建、刪除、文件搜索與遍歷、文件重命名、移動、複製、文件權限修改等常用操作。 一、文件讀寫操作 文件讀寫…

    編程 2025-04-29
  • 解析js base64並轉成unit

    本文將從多個方面詳細介紹js中如何解析base64編碼並轉成unit格式。 一、base64編碼解析 在JavaScript中解析base64編碼可以使用atob()函數,它會將b…

    編程 2025-04-29
  • Python元祖操作用法介紹

    本文將從多個方面對Python元祖的操作進行詳細闡述。包括:元祖定義及初始化、元祖遍歷、元祖切片、元祖合併及比較、元祖解包等內容。 一、元祖定義及初始化 元祖在Python中屬於序…

    編程 2025-04-29
  • Python列表的讀寫操作

    本文將針對Python列表的讀取與寫入操作進行詳細的闡述,包括列表的基本操作、列表的增刪改查、列表切片、列表排序、列表反轉、列表拼接、列表複製等操作。 一、列表的基本操作 列表是P…

    編程 2025-04-29
  • 如何用Python對數據進行離散化操作

    數據離散化是指將連續的數據轉化為離散的數據,一般是用於數據挖掘和數據分析中,可以幫助我們更好的理解數據,從而更好地進行決策和分析。Python作為一種高效的編程語言,在數據處理和分…

    編程 2025-04-29

發表回復

登錄後才能評論