Vue項目在本地如何調(diào)試微信sdk

安裝weixin-js-sdk

npm i weixin-jk-sdk

全局注入

在main.js中引入

import wx from 'weixin-js-sdk'
Vue.prototype.$wx = wx

最近花了500塊錢 搞了個配置較高 阿里服務器 來學習 node 及對應的框架,現(xiàn)在:,阿里云雙11活動 1核2G1M,69元/1年,180元/3年

注冊sdk

詳情請移步 微信官方sdk文檔

下面代碼是我的一個微信sdk注冊


methods: {
    /**
     * 注冊微信sdk
     */
    onRegisterWeixinSdk() {
        // 因為$wx剛剛已經(jīng)在全局注測了,所以在這里我們是可以直接this去調(diào)用的,sdk所需要的參數(shù)可以在獲取sdk參數(shù)的接口里面去調(diào)用
        this.$wx.config({
            debug: false, // 開啟調(diào)試模式,調(diào)用的所有api的返回值會在客戶端alert出來,若要查看傳入的參數(shù),可以在pc端打開,參數(shù)信息會通過log打出,僅在pc端時才會打印。
            appId, // 必填,公眾號的唯一標識
            timestamp, // 必填,生成簽名的時間戳
            nonceStr, // 必填,生成簽名的隨機串
            signature,// 必填,簽名
            jsApiList: ['updateAppMessageShareData', 'updateTimelineShareData'] // 必填,需要使用的JS接口列表
        })
    },
    /**
     * 設置微信分享參數(shù)
     */
    onRegisterWeixinShare() {
        this.$wx.ready(() => {
            // 分享給朋友
            this.$wx.updateAppMessageShareData({
                title, // 分享標題
                desc, // 分享描述
                link, // 分享鏈接,該鏈接域名或路徑必須與當前頁面對應的公眾號JS安全域名一致
                imgUrl, // 分享圖標
                success () {
                    // 設置成功
                }
            })
            // 分享到朋友圈
            this.$wx.updateTimelineShareData({
                title, // 分享標題
                desc, // 分享描述
                link, // 分享鏈接,該鏈接域名或路徑必須與當前頁面對應的公眾號JS安全域名一致
                imgUrl, // 分享圖標
                success () {
                    // 設置成功
                }
            })
        })
    },
}

修改hosts文件

不知道hosts文件目錄的童鞋請自行百度

# 在hosts文件里增加這一行代碼,將本地127.0.0.1指向線上域名,這個域名一定要是微信公眾號里面的js安全域名(這里以我自己得域名舉例)
127.0.0.1 ydhtml.com

這里默認我設置vue服務是 8888 端口

設置host完成之后這個時候,我們本地就可以 輸入 ydhtml.com:8888 訪問我們本地的項目了

設置nginx反向代理

nginx安裝不懂得童鞋請自行下載安裝噢

ps:一般我們的vue項目端口是8080,也可能是 8787 8888,這個時候我們就需要使用nginx進行反向代理,如果我們不設置代理的話,我們訪問這個域名 ydhtml.com:8888 就跟我們的js安全域名不一致了,還不美觀,所以我們就需要用到反向代理,去將 ydhtml.com:8888 映射成 ydhtml.com

配置nginx文件

在nginx的根目錄下,然后進入 conf 文件夾,然后創(chuàng)建一個文件夾 servers,再新建一個文件這個文件名要跟你設置hosts name 一致,這里我的文件名是 ydhtml.com,然后打開文件,將以下內(nèi)容復制進去

記得將端口和域名修改成你自己的,然后保存

upstream ydhtml.com {
    server 127.0.0.1:8888;
}

server
{
   listen 80 ;
        
   server_name ydhtml.com localhost;
    
   index index.html index.htm;
   # root /home/workspace/ft-portal-admin/release-current/;
    
   location / {
      proxy_pass http://ydhtml.com;
      add_header 'Access-Control-Allow-Origin' '*'; 
      add_header 'Access-Control-Allow-Credentials' 'true'; 
   }

}

最后重啟nginx

下載微信開發(fā)者工具

選擇 公眾號網(wǎng)頁調(diào)試,再輸入域名 ydhtml.com 這個時候只要nginx重啟成功就可以不需要帶端口號了,最后就可以在控制臺里面愉快的調(diào)試啦

小提示

  • 安卓貌似不支持最新的微信sdk版本(1.6.0)
  • 安卓在微信中默認會帶有 from=groupmessage or from=singlemessage 參數(shù)

這里針對帶有參數(shù)的情況下,如何去解決這個問題,代碼如下

/**
 * 清除微信分享自帶的參數(shù)
 * @param { String } link
 */
function clearWxLinkParams(link) {
    if (link.includes('from=') || link.includes('isappinstalled=')) {
        const newLink = link.replace(/&from=((.+?)*)/g, '')
        location.replace(newLink)
    }
}

clearWxLinkParams(location.href)
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 做微信公眾號開發(fā),用到了微信js-sdk的幾個方法,比如手機相機拍攝照片,上傳照片uploadImage等接口。這...
    wfeidan閱讀 4,060評論 1 3
  • 在微信內(nèi)置瀏覽器中通過微信JS SDK,可以使用微信提供的功能,例如設置分享鏈接的標題和圖片、調(diào)起微信支付、打開掃...
    hjiangwen閱讀 8,476評論 1 8
  • 1.下載fiddler2.通過host綁定本地ip/遠程測試ip到目標域名 選擇tools-->hosts,在彈出...
    敲代碼的張閱讀 17,505評論 0 4
  • 統(tǒng)一環(huán)境 在實際開發(fā)中,會有不同的環(huán)境: 開發(fā)環(huán)境:自己的電腦 測試環(huán)境:提供給測試人員使用的環(huán)境 預發(fā)布環(huán)境:數(shù)...
    alfalfaw閱讀 4,318評論 1 2
  • 16宿命:用概率思維提高你的勝算 以前的我是風險厭惡者,不喜歡去冒險,但是人生放棄了冒險,也就放棄了無數(shù)的可能。 ...
    yichen大刀閱讀 7,871評論 0 4

友情鏈接更多精彩內(nèi)容