微信分享调用jssdk实例


Posted in Javascript onJune 08, 2017

网页在微信中打开,进行分享,详细过程

1、问题说明

搞了半天,终于搞定。说下基本需求,很简单,网页在微信中打开,分享。
网页是html格式,原来分享时会一直显示链接,看了下代码中没有调用jssdk,调用的是一个第三方的平台的分享接口。

2、问题解析

根据微信官方给出的demo,可以看到核心就是获取四个参数,配置wx.config。
四个参数分别是appId、timestamp、nonceStr、signature
appId不用说,后面三个都是根据微信的接口得到的,有兴趣的可以看下官方,不过也可以不管。

3、解析思路

接下来,说下我的思路,在js中通过ajax调用jssdk部署的接口,返回上述所需参数。
我测了PHP,写了一个myapi.php接口,很简单:

<?php
require_once "jssdk.php";
$jssdk = new JSSDK("你的appId", "你的appSecret");
$signPackage = $jssdk->GetSignPackage();

$data = array(
 'appId' => $signPackage["appId"], 
 'timestamp' => $signPackage["timestamp"],
 'nonceStr' => $signPackage["nonceStr"],
 'signature' => $signPackage["signature"]);
echo json_encode($data);

前端页面

<script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>
<script>
 $(function(){
  $.ajax({
    type: "GET",
    url: "./myapi.php",
    data: "",
    success: function(data){
     var result = JSON.parse(data);    
     if (result != null) { 
      wx.config({ 
       debug: false, 
       appId: result.appId, 
       timestamp: result.timestamp, 
       nonceStr: result.nonceStr, 
       signature: result.signature, 
       jsApiList: ['onMenuShareTimeline', 'onMenuShareAppMessage'] 
     }); 
     } 
    },
    error: function(){

    }
   });
 });

 window.sharedata = {
  title: '标题',
  desc: '描述',
  link: window.location.href,
  imgUrl: 'https://gqrcode.alicdn.com/img?type=cs&shop_id=295323332&seller_id=1094878600&w=140&h=140&el=q&v=1',
  success: function () {
   alert('success');
  },
  cancel: function () {
   alert('cancel');
  }
 };

 wx.ready(function () {
  wx.onMenuShareAppMessage(sharedata);
  wx.onMenuShareTimeline(sharedata);
 });

</script>

4、知识点

1、微信分享jssdk的使用
2、html调用ajax
3、解决微信分享为何出现链接的问题

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
在子窗口中关闭父窗口的一句代码
Oct 21 Javascript
jquerymobile局部渲染的各种刷新方法小结
Mar 05 Javascript
node爬取微博的数据的简单封装库nodeweibo使用指南
Jan 02 Javascript
基于Css3和JQuery实现打字机效果
Aug 11 Javascript
Vue.js教程之axios与网络传输的学习实践
Apr 29 Javascript
详解Vue用axios发送post请求自动set cookie
May 10 Javascript
详解Angular-Cli中引用第三方库
May 21 Javascript
js事件委托和事件代理案例分享
Jul 25 Javascript
vue中父子组件注意事项,传值及slot应用技巧
May 09 Javascript
Vue press 支持图片放大功能的实例代码
Nov 09 Javascript
JSONP 的原理、理解 与 实例分析
May 16 Javascript
微信h5静默和非静默授权获取用户openId的方法和步骤
Jun 08 Javascript
浅谈vue实现数据监听的函数 Object.defineProperty
Jun 08 #Javascript
jQuery Validate表单验证插件实现代码
Jun 08 #jQuery
浅谈 Vue v-model指令的实现原理
Jun 08 #Javascript
Vue如何实现组件的源码解析
Jun 08 #Javascript
jquery Ajax实现Select动态添加数据
Jun 08 #jQuery
js canvas实现放大镜查看图片功能
Jun 08 #Javascript
vue实现一个移动端屏蔽滑动的遮罩层实例
Jun 08 #Javascript
You might like
人族 TERRAN 概述
2020/03/14 星际争霸
PHP 文件上传进度条的两种实现方法的代码
2007/11/25 PHP
使用PHP实现二分查找算法代码分享
2011/06/24 PHP
PHP的SQL注入过程分析
2012/01/06 PHP
作为PHP程序员应该了解MongoDB的五件事
2013/06/03 PHP
解析如何在PHP下载文件名中解决乱码的问题
2013/06/20 PHP
PHP实现的迷你漂流瓶
2015/07/29 PHP
php数值转换时间及时间转换数值用法示例
2017/05/18 PHP
PHP简单验证码功能机制实例详解
2019/03/27 PHP
Prototype源码浅析 String部分(二)
2012/01/16 Javascript
javascript数组操作(创建、元素删除、数组的拷贝)
2014/04/07 Javascript
jQuery实现的fixedMenu下拉菜单效果代码
2015/08/24 Javascript
Node.js + Redis Sorted Set实现任务队列
2016/09/19 Javascript
Angular事件之不同组件间传递数据的方法
2018/11/15 Javascript
如何使用electron-builder及electron-updater给项目配置自动更新
2018/12/24 Javascript
js/jquery遍历对象和数组的方法分析【forEach,map与each方法】
2019/02/27 jQuery
使用p5.js实现动态GIF图片临摹重现
2019/10/23 Javascript
Javascript实现鼠标点击冒泡特效
2019/12/24 Javascript
在vue中实现禁止屏幕滚动,禁止屏幕滑动
2020/07/22 Javascript
[44:41]Fnatic vs Liquid 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Win7下搭建python开发环境图文教程(安装Python、pip、解释器)
2016/05/17 Python
Python正则捕获操作示例
2017/08/19 Python
zookeeper python接口实例详解
2018/01/18 Python
python2.7和NLTK安装详细教程
2018/09/19 Python
python 实现矩阵按对角线打印
2019/11/29 Python
Pycharm和Idea支持的vim插件的方法
2020/02/21 Python
通过实例解析Python文件操作实现步骤
2020/09/21 Python
python中reload重载实例用法
2020/12/15 Python
CSS3实现跳动的动画效果
2016/09/12 HTML / CSS
纯css3实现走马灯效果
2014/12/26 HTML / CSS
Auguste The Label官网:澳大利亚一家精品女装时尚品牌
2020/06/14 全球购物
中等生评语大全
2014/05/04 职场文书
教师查摆问题及整改措施
2014/10/11 职场文书
工伤事故处理协议书怎么写
2014/10/15 职场文书
Python中基础数据类型 set集合知识点总结
2021/08/02 Python
Mysql实现简易版搜索引擎的示例代码
2021/08/30 MySQL