微信分享、极简微信分享、thinkphp微信分享、laravel微信分享、3分钟完成微信分享

码农天地 -
微信分享、极简微信分享、thinkphp微信分享、laravel微信分享、3分钟完成微信分享

目录
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/7909779709...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
https://xueqiu.com/3313555408...
安装微信开发SDK - easywechat

准备测试公众号 (已有公众号appid secret 且公众号已配置jsapi安全域名的此步骤可以忽略)

后端代码

前端代码

可能会出现的问题

安装微信开发SDK - easywechat

根据php版本和安装中的因素 选择不同的easywechat版本 https://www.easywechat.com/docs/5.x/installation 文档地址,在这里我用5.0版本

composer require overtrue/wechat:~5.0 -vvv

分享具体参照文档地址 easywechat-jssdk

 
-

准备测试公众号 (已有公众号appid secret 且公众号已配置jsapi安全域名的此步骤可以忽略)登录测试微信公众号修改接口配置信息JS接口安全域名

注意:复制测试公众号的appid与secret 配置完测试公众号的必要参数,务必要将测试分享的微信关注第3步骤的测试公众号,否则分享无效果。

 
-

后端代码


1.  <?php
    

3.  namespace appwxcontroller;
    

5.  use EasyWeChatFactory;
    
6.  use thinkController;
    

8.  /**
    
9.   * Thinkphp 5.1
    
10.   * Class Index
    
11.   * @package appwxcontroller
    
12.   */
    
13.  class Index extends Controller
    
14.  {
    
15.      /**
    
16.   * Notes: 初始化加载分享页面
    
17.   * User: Jartin
    
18.   * Url: /index.php/wx/index/index
    
19.   */
    
20.      public function index()
    
21.      {
    
22.          if ($this->request->isAjax()) {
    
23.              $jssdk = $this->getJsapi();
    
24.              return json([
    
25.                  'data' => $jssdk
    
26.              ]);
    
27.          }
    
28.          return view();
    
29.      }
    

31.      /**
    
32.   * Notes: 获取分享必要参数
    
33.   * User: Jartin
    
34.   */
    
35.      private function getJsapi()
    
36.      {
    

38.          $config = [
    
39.              'app_id' => '公众号APPID',
    
40.              'secret' => '公众号APPSECRET',
    
41.              'token' => '公众号配置的参数token',
    
42.              // 指定 API 调用返回结果的类型:array(default)/collection/object/raw/自定义类名
    
43.              'response_type' => 'array',
    
44.              'log' => [
    
45.                  'level' => 'debug',
    
46.                  'file' => __DIR__ . '/../../wechat.log',
    
47.              ],
    
48.          ];
    

50.          $app = Factory::officialAccount($config);
    
51.          $menu = array(
    
52.              'updateAppMessageShareData',
    
53.              'updateTimelineShareData',
    
54.              'onMenuShareTimeline',
    
55.              'onMenuShareAppMessage');
    

57.          // 以下参数的具体释义参考文档 https://www.easywechat.com/docs/5.x/basic-services/jssdk
    
58.          $jssdk = $app->jssdk->buildConfig($menu, true, false, false);
    
59.          return $jssdk;
    
60.      }
    

62.      /**
    
63.   * Notes: 微信公众号配置开发域名token验证地址(已验证的忽略该方法)
    
64.   * User: Jartin
    
65.   */
    
66.      public function wx_check()
    
67.      {
    
68.          $config = [
    
69.              'app_id' => '公众号APPID',
    
70.              'secret' => '公众号APPSECRET',
    
71.              'token' => '公众号配置的参数token',
    
72.              // 指定 API 调用返回结果的类型:array(default)/collection/object/raw/自定义类名
    
73.              'response_type' => 'array',
    

75.              'log' => [
    
76.                  'level' => 'debug',
    
77.                  'file' => __DIR__ . '/../../wechat.log',
    
78.              ],
    
79.          ];
    
80.          $app = Factory::officialAccount($config);
    
81.          $response = $app->server->serve();
    
82.          $response->send(); // Laravel 里请使用:return $response;
    
83.      }
    
84.  }
    

 
-

前端代码


1.  <!doctype html>
    
2.  <html lang="en">
    
3.  <head>
    
4.      <meta charset="UTF-8">
    
5.      <meta name="viewport"
    
6.            content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    
7.      <meta http-equiv="X-UA-Compatible" content="ie=edge">
    
8.      <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.js"></script>
    
9.      !!!!  ↓↓↓↓↓↓ 这个微信分享的js代码版本必须为 1.5.0 否则无效
    
10.      <script src="http://res.wx.qq.com/open/js/jweixin-1.5.0.js"></script>
    
11.      <title>标题</title>
    
12.  </head>
    
13.  <script>
    
14.      $(document).ready(function () {
    
15.          $.get('/wx/index/index', '', function (res) {
    
16.              wx.config({
    
17.                  debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来。
    
18.                  appId: res.data.appId, // 必填,公众号的唯一标识
    
19.                  timestamp: res.data.timestamp, // 必填,生成签名的时间戳
    
20.                  nonceStr: res.data.nonceStr, // 必填,生成签名的随机串
    
21.                  signature: res.data.signature,
    
22.                  jsApiList:['checkJsApi', 'updateAppMessageShareData', 'updateTimelineShareData']
    
23.              });
    
24.          })
    
25.          wx.ready(function () {
    
26.              wx.updateAppMessageShareData({
    
27.                  title: '标题',
    
28.                  desc: '描述文字'  ,
    
29.                  link: 'http://域名/wx/index/index',
    
30.                  imgUrl:'https://www.imooc.com/static/img/index/logo2020.png' ,
    
31.                  success: function () {
    
32.                  }
    
33.              });
    
34.              wx.updateTimelineShareData({
    
35.                  title: '标题',
    
36.                  desc: '描述文字'  ,
    
37.                  link: 'http://域名/wx/index/index',
    
38.                  imgUrl:'https://www.imooc.com/static/img/index/logo2020.png' ,
    
39.                  type: 'link',
    
40.                  dataUrl: '',
    
41.                  success: function () {
    
42.                  }
    
43.              });
    
44.          });
    
45.          wx.error(function (res) {
    
46.              console.log("shareerror")
    
47.              alert(res.errMsg);
    
48.          });
    
49.      })
    
50.  </script>
    
51.  <body>
    
52.  </body>
    
53.  </html>
    
54.   No newline at end of file
    

成功!

可能会出现的问题旧的前端微信分享sdkjs链接未替换为最新而导致的分享失败jsApiList列表中的行为不是微信最新分享的行为,要确保列表中有的 wx.方法都有js代码置后而导致的加载异常导致的分享失败
特别申明:本文内容来源网络,版权归原作者所有,如有侵权请立即与我们联系(cy198701067573@163.com),我们将及时处理。

php介绍

PHP即“超文本预处理器”,是一种通用开源脚本语言。PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。PHP独特的语法混合了C、Java、Perl以及 PHP 自创的语法。利于学习,使用广泛,主要适用于Web开发领域。

Tags 标签

php

扩展阅读

加个好友,技术交流

1628738909466805.jpg