微信分享朋友鏈接顯示js代碼(微信分享 js)

本文目錄一覽:

如何在網頁中通過js代碼將內容分享到朋友圈

微信內置的瀏覽器里添加了WeixinJSBridge對象,可以通過引對象將內容分享到朋友圈,所以以下代碼只在微信內置瀏覽器中有效。

var shareToWeixinFriend = function(data, cb)

{

if (typeof WeixinJSBridge == ‘undefined’) {

return false;

}

else {

WeixinJSBridge.invoke(‘shareTimeline’, {

‘img_url’: data.imgurl || ”, // 圖片url地址

‘link’: data.url, // 文章地址,此內容分享到朋友圈後可以點擊跳轉到此地址

‘desc’: data.desc,

‘title’: data.title

}, function(d) {

// 返回res.err_msg取值,d還有一個屬性是err_desc

// share_timeline:cancel 用戶取消

// share_timeline:fail 發送失敗

// share_timeline:confirm 發送成功

WeixinJSBridge.log(d.err_msg);

cb cb(d.err_msg);

});

}

return false;

}

另外在微信內置瀏覽器中可以通過weixin://鏈接直接查看某個微信號的資料

微信分享js、iphone、通用版

不知道這個還行不

/*******************************

* Author:Mr.Think

* Description:微信分享通用代碼

* 使用方法:_WXShare(‘分享顯示的LOGO’,’LOGO寬度’,’LOGO高度’,’分享標題’,’分享描述’,’分享鏈接’,’微信APPID(一般不用填)’);

*******************************/

function _WXShare(img,width,height,title,desc,url,appid){

//初始化參數

img=img||”;

width=width||100;

height=height||100;

title=title||document.title;

desc=desc||document.title;

url=url||document.location.href;

appid=appid||”;

//微信內置方法

function _ShareFriend() {

WeixinJSBridge.invoke(‘sendAppMessage’,{

‘appid’: appid,

‘img_url’: img,

‘img_width’: width,

‘img_height’: height,

‘link’: url,

‘desc’: desc,

‘title’: title

}, function(res){

_report(‘send_msg’, res.err_msg);

})

}

function _ShareTL() {

WeixinJSBridge.invoke(‘shareTimeline’,{

‘img_url’: img,

‘img_width’: width,

‘img_height’: height,

‘link’: url,

‘desc’: desc,

‘title’: title

}, function(res) {

_report(‘timeline’, res.err_msg);

});

}

function _ShareWB() {

WeixinJSBridge.invoke(‘shareWeibo’,{

‘content’: desc,

‘url’: url,

}, function(res) {

_report(‘weibo’, res.err_msg);

});

}

// 當微信內置瀏覽器初始化後會觸發WeixinJSBridgeReady事件。

document.addEventListener(‘WeixinJSBridgeReady’, function onBridgeReady() {

// 發送給好友

WeixinJSBridge.on(‘menu:share:appmessage’, function(argv){

_ShareFriend();

});

// 分享到朋友圈

WeixinJSBridge.on(‘menu:share:timeline’, function(argv){

_ShareTL();

});

// 分享到微博

WeixinJSBridge.on(‘menu:share:weibo’, function(argv){

_ShareWB();

});

}, false);

}

請問為什麼微信公眾號頁面模板鏈接複製出現的是JavaScript

出現的內容是javascript:;也就是javascript:void(0);的縮寫,一般是下面這種寫法

a href=”javascript:void(0);”a標籤a標籤a標籤/a

表示點擊這個a標籤不進行任何操作

js處理微信分享配置

整理一下通過h5做微信分享相關配置。

登錄微信公眾號, 獲取AppID , 配置白名單 ,然後 配置JS接口安全域名 。

登錄公眾號後,左側菜單欄選擇:開發 = 基本配置,直接複製開發者ID(AppID)即可:

注意使用公網IP

左側菜單欄選擇:設置 = 公眾號設置:

網頁授權主要是獲取微信openId使用,如果只是用分享操作,本步可以略過。

網頁授權介紹

大致步驟是:

在配置完前面AppId、白名單及安全域名後,開始處理網頁授權。

網頁授權這一塊兒內容主要是後端需要處理的內容較多,前端還是很簡單的,僅需要跳入微信鏈接即可。為什麼要走這一步呢因為有些操作,例如微信支付、播放微信錄音、獲取微信地址、微信卡券、商品、小店等等許多功能必須在微信瀏覽器匯總打開操作才可以,因此需要跳入微信瀏覽器及微信鏈接來處理後續操作。當配置後,鏈接便只有在微信瀏覽器中打開才會生效了,不然會提示:

鏈接如下:

{$appId}redirect_uri=={$URL}response_type=codescope=snsapi_base#wechat_redirect

參數分解

可見,上面需要填入的變量有二,一個是前面回去的AppId,另外一個則是url,需要寫的是與配置域名所對應域名下的url,並且要進行urlEncode編碼處理使用。

在拿到上述完整鏈接後,通過 window.location.href = ${url} 進行網頁授權即可。在授權成功後,頁面會重定向到自己設置的url頁面去,然後在該連接上會有code值,取出即可:

將拿到的code值傳給後端即可,看具體需求決定是否前端使用openId,如果非必要則不在前端獲取保存或者由後端加密後傳給前端使用。

大致分為五個步驟:

在步驟 1.3 中已經配置。

在需要調用JS接口的頁面引入如下JS文件:

備註:支持使用 AMD/CMD 標準模塊加載方法加載

配置需要如下幾個參數:

那這些參數從哪兒來呢?依舊不用擔心,依然是交給後端處理,後端返回時間戳、隨機串及簽名,其他的自己配置即可。

通過後端獲取需要進行一個小交互,將此時的鏈接地址(window.location.href)傳給後端即可。

於是就有了上述的除了最後一個以外的所有參數。最後一個 jsApiList 則是寫分享接口,如我們想要分享到朋友圈、QQ、騰訊微博這3個,那就寫:

可以發現,我們其實多配置了一個 checkJsApi ,這個是一個判斷配置,可以判斷當前客戶端版本是否支持指定JS接口。

簽名算法

所有JS接口列表

接下來就可以寫分享信息配置了。配置信息一般都是通過 wx.ready 處理的:

例如我們要分享到朋友圈,配置則如下:

注意:不要出現 誘導分享

同樣,一般都是通過 wx.error 處理失敗相關信息:

其實微信分享(地理位置、掃一掃、卡券等微信各類接口)都是通過上述步驟配置的,可舉一反三,在面對不同需求時通過微信開發文檔來進行更為複雜的操作。

請問微信分享鏈接修改標題、縮略圖等按您說的方法把那段js代碼加進去無效是怎麼回事?

最近很多群朋友問我,為什麼我修改網頁裡面標題和描述語,但是我分享在微信朋友圈和朋友以後的標題和描述語還是不變呢?其實大家修改的是網頁標題和描述語,沒有真正修改微信分享接口那部分描述語,所以才不會變的。

微信分享一個網頁或者發送一個網址鏈接時顯示的左邊圖片和右邊文字是怎麼用代碼實現的?如圖:

圖片是你網頁中第一張圖,不過該圖不能小於 300*300,要不就不顯示了,至於右邊的文字,是取你的頁面標題及 Description 的內容,如果你Description 沒寫它就默認讀取你的網址了。

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

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

相關推薦

  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • JS Proxy(array)用法介紹

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

    編程 2025-04-29
  • Python字符串寬度不限制怎麼打代碼

    本文將為大家詳細介紹Python字符串寬度不限制時如何打代碼的幾個方面。 一、保持代碼風格的統一 在Python字符串寬度不限制的情況下,我們可以寫出很長很長的一行代碼。但是,為了…

    編程 2025-04-29
  • Python基礎代碼用法介紹

    本文將從多個方面對Python基礎代碼進行解析和詳細闡述,力求讓讀者深刻理解Python基礎代碼。通過本文的學習,相信大家對Python的學習和應用會更加輕鬆和高效。 一、變量和數…

    編程 2025-04-29
  • 倉庫管理系統代碼設計Python

    這篇文章將詳細探討如何設計一個基於Python的倉庫管理系統。 一、基本需求 在着手設計之前,我們首先需要確定倉庫管理系統的基本需求。 我們可以將需求分為以下幾個方面: 1、庫存管…

    編程 2025-04-29
  • Python滿天星代碼:讓編程變得更加簡單

    本文將從多個方面詳細闡述Python滿天星代碼,為大家介紹它的優點以及如何在編程中使用。無論是剛剛接觸編程還是資深程序員,都能從中獲得一定的收穫。 一、簡介 Python滿天星代碼…

    編程 2025-04-29
  • 寫代碼新手教程

    本文將從語言選擇、學習方法、編碼規範以及常見問題解答等多個方面,為編程新手提供實用、簡明的教程。 一、語言選擇 作為編程新手,選擇一門編程語言是很關鍵的一步。以下是幾個有代表性的編…

    編程 2025-04-29
  • Python實現簡易心形代碼

    在這個文章中,我們將會介紹如何用Python語言編寫一個非常簡單的代碼來生成一個心形圖案。我們將會從安裝Python開始介紹,逐步深入了解如何實現這一任務。 一、安裝Python …

    編程 2025-04-29
  • 怎麼寫不影響Python運行的長段代碼

    在Python編程的過程中,我們不可避免地需要編寫一些長段代碼,包括函數、類、複雜的控制語句等等。在編寫這些代碼時,我們需要考慮代碼可讀性、易用性以及對Python運行性能的影響。…

    編程 2025-04-29
  • 北化教務管理系統介紹及開發代碼示例

    本文將從多個方面對北化教務管理系統進行介紹及開發代碼示例,幫助開發者更好地理解和應用該系統。 一、項目介紹 北化教務管理系統是一款針對高校學生和教職工的綜合信息管理系統。系統實現的…

    編程 2025-04-29

發表回復

登錄後才能評論