微信JS分享

js实现微信自定义分享功能 1.首先要进行js接口安全域名的设置和配置分享页面引用微信js<script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>//公众号appid,时间戳,随机字符串,后台返回签名信息,分享标题,分享链接,分享内容48字以内,分享图片Myth.common.wxShare.WxShare('<%... 阅读详情
概述

微信JS-SDK是微信公众平台面向网页开发者提供的基于微信内的网页开发工具包。

通过使用微信JS-SDK,网页开发者可借助微信高效地使用拍照、选图、语音、位置等手机系统的能力,同时可以直接使用微信分享、扫一扫、卡券、支付等微信特有的能力,为微信用户提供更优质的网页体验。

此文档面向网页开发者介绍微信JS-SDK如何使用及相关注意事项

准备工作

  • 拥有自己的域名

  • 绑定域名到公网服务器IP地址

  • 拥有公司订阅号并认证成功

  • 微信公众平台订阅号绑定域名
      先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”,可以按照提示进行填写,最多填写三个
    比如你要部署并后面分享的路径域名都是 m.bbb.com
    那么就填写m.bbb.com,其他都不要加,不要加端口号和http头
    这里写图片描述

  • 参考资料和协助工具
    1.微信开发者说明文档:点击查看
    2.微信WEB开发者工具(需要该订阅号在开发者名单中授权使用者的微信账号,微信WEB开发者工具使用指导):
    Windows 64位版本:下载地址
    Windows 32位版本:下载地址
    Mac版本:下载地址
    3.微信JSSDK分享sample:点击下载
    4.在线DEMO:http://203.195.235.76/jssdk/

服务器端提供js的授权token

服务器端Java版本和PHP版本基本没什么区别只需要把授权拿到就可以了

示例代码:
http://demo.open.weixin.qq.com/jssdk/sample.zip
备注:链接中包含php、java、nodejs以及python的示例代码供第三方参考,第三方切记要对获取的accesstoken以及jsapi_ticket进行缓存以确保不会触发频率限制。

官网提供了验证授权返回的数据是否正确
https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=jsapisign

只要通过官网的验证最后的签名和官网一摸一样基本就没问题了。

前端js分享页面

最坑的地方就在这里了,往往也是这里拦住了很多人。
需要注意的几个点

以此页面为例

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
    <title>微信分享测试</title>
  <script src="http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.js"></script> 

</head>
<body>
    <div id="myDiv"><h2>微信分享测试</h2></div>
<p>
author:牧竹子<br>
time:2017-10-20<br>
订阅号: <br>
<img src="https://img-blog.youkuaiyun.com/20170928183434735?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvempjamF2YQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast">
</p>
</body>


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

/*************
*微信分享方法
*@param  url 分享的链接地址
*@param  title分享的标题
*@param  desc分享描述信息
*@param  img分享的图片预览链接地址
*****************/
    function WeChat(url,title,desc,img){
//测试的时候直接让服务器根据测试的地址生成一个授权信息,这样就不用后台服务部署到服务器上进行测试了。正式环境可以打开此请求地址。
 //$.get("http://localhost:8081/api/getJsToken",{url:url},function(result) {

  var result={"code":1,"msg":"获取JS授权成功","data":{"jsapiTicket":"HoagFKDcsGMVCIY2vOjf9nqIBAjdC6IXoMicLp9D0QS9Y7liHyNeQhO5U03Fmy4UrxzcohZxTRQF7lUdlchGRQ","signature":"ab5531650b03a170607763173629ff1764d812d9","appId":"appId","url":"http://m.bbb.com/index.html","nonceStr":"1a8db561118a4c34","timestamp":"1508510014"}};

  console.log(result.data)
   var appId=result.data.appId,
    timestamp=result.data.timestamp,
   nonceStr=result.data.nonceStr,
   signature=result.data.signature;


      wx.config({
        debug: true,
        appId: appId,
        timestamp: timestamp,
        nonceStr: nonceStr,
        signature: signature,
        jsApiList: [     //把需要的接口加入至列表
              "onMenuShareTimeline", //分享给好友
              "onMenuShareAppMessage", //分享到朋友圈
              "onMenuShareQQ", //分享到QQ
              "onMenuShareWeibo", //分享到微博
              "checkJsApi","scanQRCode",   //如果需要调扫码  侧加入至列表
        ]
      });




        wx.ready(function () {
        // 在这里调用 API
        wx.onMenuShareTimeline({  //例如分享到朋友圈的API 
        title: title, // 分享标题
        link: url, // 分享链接
        imgUrl: img, // 分享图标
        success: function () {
        },
        cancel: function () {
        // 用户取消分享后执行的回调函数
        }
        });

        wx.onMenuShareAppMessage({
        title: title, // 分享标题
        desc: desc, // 分享描述
        link: url, // 分享链接
        imgUrl: img, // 分享图标
        type: '', // 分享类型,music、video或link,不填默认为link
        dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
        success: function () {
        },
        cancel: function () {
        // 用户取消分享后执行的回调函数
        }
        });
        wx.error(function (res) {

        alert(res.errMsg);  //打印错误消息。及把 debug:false,设置为debug:ture就可以直接在网页上看到弹出的错误提示

        });
        });
// },
//  "json"
//  );
}

//需要调用时执行这个方法。
var url = location.href.split('#')[0];//用户要分享的网址
var title  = '你值得关注';//分享的标题
var shareimg = 'http://m.xialeme.com/Upload/System/20170924/59c777f53052b.png';//分享的图片
console.log(shareimg);
var desc = '关注牧竹子的订阅号';//分享的描述信息
WeChat(url,title,desc,shareimg);//当需要动态加载的时候,就调用一下。


</script>




</html>
【VisualStdio】手把手教你做一个上位机(1)控件设计布局 网上有很多形形色色的制作上位机教程,有些写的挺好的,但是过于单调。 阅读详情

相关推荐

FPGA串口通信----uart(一)

通过PLL锁相环IP的使用,可以输入时钟进行分频,倍频,也可以产生多路时钟输出信号。外部提供晶振的原因:①Fpga电路大多数需要时序分析②晶振在Fpga内部占空间大,所以放置于外部PCB板上Uart异步传输速率不能很快的原因:考虑到工程实际问题,假如时钟周期大(传输速率慢的话),采取到数据电平变化的边沿时刻的概率会小很多,这样数据也很准确,通常uart适用于2M.

mvpkuku的博客 968

JS-SDK接入以及微信二次分享

如果是 html 的静态页面在前端通过 ajax 将url传到后台签名,前端需要用 js 获取当前页面除去’#‘hash部分的链接(可用location.href.split(’#')[0]获取,而且需要encodeURIComponent),因为页面一旦分享,微信客户端会在你的链接末尾加入其它参数,如果不是动态获取当前链接,将导致分享后的页面签名失败。如果这里获取到的 signature 和你得出的 signature 一致,就证明你的 signature 是正确的。

m0_44973790的博客 3614

FPGA进位链(Carry Chain)实战:从Xilinx CARRY8原语到性能优化全解析

本文深入解析了FPGA进位链(Carry Chain)的原理与应用,重点剖析了Xilinx CARRY8原语的端口功能与内部机制。通过实测数据揭示了进位链的真实延迟特性与温度影响,并详细阐述了如何利用DI和S信号进行动态路径优化、实现减法运算与条件进位选择,从而有效提升设计性能。最后,文章探讨了系统级的流水线拆分、布局约束等实战优化策略与常见陷阱。

weixin_29313817的博客 449

js使用微信分享功能

在使用微信分享(包括微信api里的其他方法)之前,需要有一些准备、比如要准备 appId、timestamp、nonceStr、signature 这四个数据,只有在有这四个字段后,我们才可以去使用微信的一些方法和功能, 但这些东西是不能写死的,得是活的,所以就麻烦后端同学配合了一下,将数据帮忙生成了一下,但在调研阶段还是使用的手动生成,生成后他把得到的这几个字段发给我,我拿到后放到对应的位置就可...

韩大璐 7539

Windows10 搭建 FTP 服务器

问题: 有这么一个需求,博主需要对班级同学的信息进行收集,同学的信息是一个个的文件, 正常是每个同学将自己的信息打包压缩通过 QQ 或者邮箱方式发送给博主, 博主一个个接收这些压缩包,然后进行解压,再统一放到一个文件夹下, 但是博主觉得这样子实在是太麻烦了,如果某一个同学的信息来回变动,就需要接收很多次,更改很多次, 另外如果消息过多还会产生漏掉某个同学的信息的问题。 解决方法: 如果可以使...

assiduous_me的博客 3965

Qt Creator设计器里也能拖拽?5步将你的QML自定义控件变成可视化插件(Qt6.5+)

本文详细介绍了如何在Qt Creator设计器中实现QML自定义控件的可视化拖拽功能(Qt6.5+)。通过5个步骤,从构建可插件化的QML控件基础到部署插件到设计器环境,帮助开发者将自定义控件转化为设计器插件,提升团队协作效率。特别适合需要频繁调整UI样式的开发场景。

weixin_29214559的博客 170

微信公众号引入使用微信JS-SDK

一定要确定JS安全域名已经配置,不然会报错 导致config 配置不成功。局部引入(单个使用页面引入)使用JS-SDK中的api。配置wx.config。挂载引入JS-SDK。 ios引入jssdk引入失败解决方案

加班可以,无偿加班不行 2047

【好物推荐】MQTTX 快速入门使用指南

摘要:MQTTX是一款跨平台MQTT客户端工具,支持MQTT 5.0/3.1.1协议,提供桌面版、网页版和CLI版本。本文介绍了快速入门指南,包括下载安装、核心概念解释、连接公共MQTT服务器(broker.emqx.io)的步骤,以及订阅主题、发布和接收消息的操作流程。文章还提供了常见问题排查方法,帮助用户快速完成MQTT开发调试的基本操作。

奶爸的编程之路,也就一周冷个三天 857

实现h5网页微信分享、朋友圈分享功能(微信右上角分享)

要实现微信分享功能,需要使用微信JS-SDK。以下是实现微信分享的步骤: 1.在微信公众平台中注册开发者账号,并创建一个网页应用。 2.在网页中引入微信JS-SDK的JS文件,并在页面加载完成时调用微信JS-SDK的初始化方法。

Tra_velers的博客 9984

YoloV8优化:感受野注意力卷积运算(RFAConv),效果秒杀CBAM和CA等 | 即插即用系列

感受野注意力卷积运算(RFAConv),解决卷积块注意力模块(CBAM)和协调注意力模块(CA)只关注空间特征,不能完全解决卷积核参数共享的问题

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 4263

pytorch搭建SSAE实现预测分类代码模板完整代码

pytorch搭建SSAE实现预测分类代码模板完整代码

323

JSSDK公众号微信分享功能

VUE + JSSDK 微信分享功能 ; 公众号使用微信分享功能

codingLeader的博客 4234

BioEmu 扩散模型加速传统分子动力学(MD)模拟

BioEmu 是一种创新的生成式深度学习系统,通过高效采样和准确预测蛋白质的动态机制,为蛋白质科学和药物设计提供了新的工具。它在多构象采样、MD 模拟拟合和蛋白质稳定性预测方面表现出色,同时显著降低了计算成本。BioEmu 的开发为未来蛋白质动态研究和应用奠定了坚实基础。

weixin_42357472的博客 318

wechat.js完全指南:如何轻松实现微信分享与菜单控制

wechat.js是一款专注于微信环境下的JavaScript工具库,提供了微信分享、网络状态检测和菜单控制等核心功能,帮助开发者快速集成微信生态的常用功能。无论是实现朋友圈分享、控制菜单显示,还是检测用户网络状态,wechat.js都能提供简洁易用的接口。 ## 快速开始:安装与引入 ### 一键安装步骤 wechat.js支持通过bower包管理器快速安装,只需在项目目录中执行以下命令:

gitblog_00209的博客 563

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

5分钟终极指南:用wechat.js轻松搞定微信分享功能

还在为微信网页分享功能头疼吗?🤔 今天我要为你介绍一个简单高效的解决方案——wechat.js!这个轻量级的JavaScript库专门为微信环境设计,让你能在短短5分钟内实现朋友圈分享、好友分享、微博分享等社交功能。无论你是前端新手还是资深开发者,wechat.js都能让你的微信网页开发事半功倍! wechat.js是一个专注于微信相关JS操作的实用库,由开发者sofish创建并维护。它通过简

gitblog_00244的博客 157

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

wechat.js终极指南:如何在微信网页开发中轻松实现分享与交互功能

微信网页开发总是让你头疼吗?面对微信JSSDK复杂的API和不统一的接口,很多开发者感到无从下手。wechat.js正是为解决这一痛点而生的轻量级JavaScript库,它封装了微信原生JSSDK接口,为你提供简洁易用的API,让你在微信网页开发中游刃有余。无论你是新手还是经验丰富的开发者,掌握wechat.js都能让你的开发效率提升数倍。 ## 📱 为什么微信网页开发需要wechat.js?

gitblog_00100的博客 823

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

微信网页开发终极指南:5分钟掌握wechat.js实现朋友圈分享功能

在移动互联网时代,微信已经成为连接用户与内容的重要桥梁。对于开发者来说,如何在微信环境中优雅地实现网页分享功能是一个常见的挑战。wechat.js作为一个专注于微信相关JS操作的实用库,能够帮助开发者轻松实现微信分享、网络状态检测和菜单控制等功能,让你的网页内容在社交平台获得更多曝光机会。 ## 🌟 为什么选择wechat.js? 微信生态开发常常面临API复杂、兼容性差的问题。wechat

gitblog_00214的博客 380

微信网页开发终极指南:用wechat.js轻松实现分享与交互

在微信内置浏览器中进行网页开发,你是否曾为复杂的JSSDK接口而头疼?是否曾为微信分享功能的不一致性而烦恼?今天,我要为你介绍一个能够解决这些痛点的强力工具——wechat.js。这款轻量级JavaScript库专门为微信网页开发设计,让你能够轻松实现微信分享、网络检测、菜单控制等核心功能,大大提升开发效率。 ## 🤔 为什么你需要wechat.js? 微信官方JSSDK虽然功能强大,但接口

gitblog_00368的博客 407

wechat.js快速上手指南:5分钟实现微信朋友圈分享功能

wechat.js是一个专注于微信相关JS操作的实用库,能够帮助开发者轻松实现微信分享、网络状态检测和菜单控制等功能。本文将带你快速掌握如何使用wechat.js在5分钟内实现微信朋友圈分享功能,让你的网页内容在社交平台获得更多曝光。 ## 📋 准备工作:安装wechat.js 要开始使用wechat.js,首先需要通过bower进行安装。打开终端,执行以下命令: ```bash $ bo

gitblog_00803的博客 483

微信网页开发终极指南:wechat.js快速实现分享功能

还在为微信网页开发中复杂的分享功能而烦恼吗?wechat.js是一个专注于微信相关JS操作的实用库,能够帮助开发者轻松实现微信分享、网络状态检测和菜单控制等功能。本文将为你提供一个完整的解决方案,让你在5分钟内掌握微信朋友圈分享的核心技巧。 ## 🎯 为什么需要wechat.js? 微信作为中国最大的社交平台,其内置浏览器对JavaScript API有着特殊限制。传统的分享功能实现复杂,需

gitblog_00348的博客 422

CANN ops-nn 算子开发指南:aclnnSwigluGroupGrad 两段式接口与 Clamped SwiGLU 反向传播实现解析

本文以 CANN ops-nn 开源算子库中的 [aclnnSwigluGroupGrad 算子文档](https://link.gitcode.com/i/4aacb13d68af05b9a012d3f862cbcbe8) 为核心,系统讲解 SwigluGroupGrad 算子在 NPU 上实现 SwiGLU 激活函数反向传播的完整技术方案。文章覆盖算子适用的硬件平台、Clamp 截断与 MoE

gitblog_01128的博客 156

【亲测免费】 wechat.js:微信JS接口的轻量级封装

`wechat.js` 是一个专为微信浏览器环境设计的轻量级 JavaScript 库,旨在简化开发者与微信内置功能的交互。通过 `wechat.js`,开发者可以轻松实现微信分享、操作菜单控制、图片预览、网络状态检测等功能,而无需深入了解微信复杂的 API 细节。 ## 项目技术分析 `wechat.js` 的核心在于对微信 JSSDK 的封装,提供了更加简洁、易用的接口。它支持多种微信操作...

gitblog_00283的博客 790

告别复杂开发:wechat.js让微信JS接口集成变得简单高效

在微信生态开发中,你是否曾为繁琐的JS接口调用而头疼?wechat.js正是为了解决这个问题而生的轻量级JavaScript库,它让微信分享、网络检测和菜单控制变得异常简单。作为一款专注于简化微信JS接口集成的工具,wechat.js通过统一的API设计,帮助开发者快速实现微信内置浏览器的各种功能。 ## 📱 为什么需要wechat.js? 微信内置浏览器提供了丰富的JS接口,但原生的调用方

gitblog_00044的博客 501

wechat.js API完全参考:分享、操作与回调函数使用手册

在微信生态开发中,wechat.js 是一个强大的JavaScript库,专门用于处理微信相关的js操作:分享、网络、菜单等功能。这个终极指南将为您提供完整的wechat.js API参考手册,帮助您快速掌握微信网页开发的核心技巧。 ## 📱 wechat.js 是什么? wechat.js 是一个轻量级的JavaScript库,专门为微信内置浏览器设计,提供了简洁的API来调用微信的原生功

gitblog_00428的博客 425

微信分享、网络检测与菜单控制 30 分钟跑通:wechat.js 实战避坑指南

接手一个微信 H5 活动页时,我光是把「分享给朋友」跑通就耗了一下午:`menu:share:appmessage`、`sendAppMessage` 这类接口名对不上号,桥接没就绪时调用直接没反应,Android 和 iOS 的行为还不一致。直到把 wechat.js 引入项目,分享、网络、菜单这些微信内置浏览器的操作全部收敛到一个 `wechat()` 接口,半小时收工。这篇文章围绕分享、网络

gitblog_00022的博客 931

终极微信JS开发工具:wechat.js核心功能详解与实战案例

在微信生态开发中,处理分享、网络检测和菜单控制是常见需求。wechat.js是一个轻量级JavaScript库,专门为微信内网页开发提供简洁API,让开发者能够轻松实现微信分享、网络状态检测、菜单控制等功能。这个终极微信JS开发工具简化了复杂的微信JS-SDK调用流程,让开发者专注于业务逻辑而非API兼容性问题。 ## 🚀 为什么选择wechat.js? 微信JS-SDK虽然功能强大,但AP

gitblog_00166的博客 918
上一篇: SpringCloud第二篇-Ribbon:
下一篇: SpringCloud第三篇-Feign
牧竹子
博客等级 码龄17年 572粉丝 233原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值