网页在微信中打开,进行分享,详细过程
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、解决微信分享为何出现链接的问题
来源: http://www.jb51.net/article/115747.htm