浏览代码

Merge remote-tracking branch 'origin/master'

306132416@qq.com 4 年之前
父节点
当前提交
d7b31fb566
共有 7 个文件被更改,包括 39 次插入11 次删除
  1. 1 1
      .gitignore
  2. 6 0
      api/demo/wxinfo.html
  3. 3 1
      api/wxinfo.php
  4. 17 0
      commands/git/update.php
  5. 1 1
      config_develop.inc.php
  6. 3 1
      front-page/fission-page.html
  7. 8 7
      lib/common/weixin_public.class.php

+ 1 - 1
.gitignore

@@ -3,4 +3,4 @@ userfiles/
 .DS_Store
 .user.ini
 logs/
-.vscode
+.vscode

+ 6 - 0
api/demo/wxinfo.html

@@ -19,6 +19,7 @@
                 var timestamp =$('input[name="timestamp"]').val();
                 var sign = $.md5(method+timestamp);
                 var code = $('input[name="code"]').val();
+                var jsUrl = $('input[name="jsUrl"]').val();
 
                 $('#sign').val(sign);
                 $.ajax({
@@ -28,6 +29,7 @@
                         timestamp :timestamp,
                         sign   : sign,
                         code   : code,
+                        jsUrl    : jsUrl,
                     },
                     url : "../api.php",
                     beforeSend :  function(data){
@@ -67,6 +69,10 @@
                 <span>code:</span>
                 <input type="text" class="input-text"  name="code" value=""/>
             </p>
+            <p>
+                <span>jsUrl:</span>
+                <input type="text" class="input-text"  name="jsUrl" value=""/>
+            </p>
 
             <p><button class="button success small" id="btn" type="button">发送请求</button></p>
         </form>

+ 3 - 1
api/wxinfo.php

@@ -7,8 +7,10 @@
  */
 try {
     $code = safeCheck($_POST["code"], 0);
+    $jsUrl = safeCheck($_POST["jsUrl"], 0);
+    $jsUrl = htmlspecialchars_decode($jsUrl);
     $weixin_public = new weixin_public(APPID, APPSECRET, APPURI);
-    $info = $weixin_public->getAllInfo($code);
+    $info = $weixin_public->getAllInfo($code, $jsUrl);
     echo action_msg($info, 200);
 
 } catch (MyException $e) {

+ 17 - 0
commands/git/update.php

@@ -0,0 +1,17 @@
+<?php
+/**
+ * Created by PhpStorm.
+ * User: zhima
+ * Date: 2019/1/25
+ * Time: 上午9:54
+ */
+
+
+
+
+$command = "cd /home/wwwroot/default/fission-weChat;git pull";
+
+
+exec($command,$data);
+
+print_r($data);

+ 1 - 1
config_develop.inc.php

@@ -30,7 +30,7 @@ $DB_prefix = 'fission_';
 
 //数据库调试等级,上线请关闭
 //0--关闭数据库错误信息 1--打印错误SQL到日志文件(默认) 2--打印所有SQL到日志文件
-$DB_DEBUG_LEVEL = 0;
+$DB_DEBUG_LEVEL = 0; 
 
 
 ?>

+ 3 - 1
front-page/fission-page.html

@@ -40,7 +40,8 @@
 
 </body>
 
-
+<script src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js" type="text/javascript"></script>
+<script type="text/javascript" src="https://res.wx.qq.com/open/libs/weuijs/1.2.1/weui.min.js"></script>
 <script>
    const apiUrl = 'http://fission.xazhima.com/api/api.php';
 
@@ -127,6 +128,7 @@
                         method: 'wxinfo',
                         timestamp: 11111111,
                         code:that.weChatCode,
+                        jsUrl:(location.href.split('#')[0]),
                         sign:md5('wxinfo'+'11111111')
                     }, //代表传过去的参数对象,
                     transformRequest: [function(data) {

+ 8 - 7
lib/common/weixin_public.class.php

@@ -76,15 +76,16 @@ class weixin_public
         return $str;
     }
 
-    private function getSignPackage($jsToken) {
+    private function getSignPackage($jsToken, $jsUrl) {
         // 注意 URL 一定要动态获取,不能 hardcode.
         $protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443) ? "https://" : "http://";
-        $url = "$protocol$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
+        //$jsUrl = "$protocol$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
+        //$jsUrl = "$protocol$_SERVER[HTTP_HOST]/front-page/fission-page.html";
 
         $nonceStr = self::createNonceStr();
         $timestamp = time();
         // 这里参数的顺序要按照 key 值 ASCII 码升序排序
-        $string = "jsapi_ticket=$jsToken&noncestr=$nonceStr&timestamp=$timestamp&url=$url";
+        $string = "jsapi_ticket=$jsToken&noncestr=$nonceStr&timestamp=$timestamp&url=$jsUrl";
 
         $signature = sha1($string);
 
@@ -92,15 +93,15 @@ class weixin_public
             "appId"     => $this->appid,
             "nonceStr"  => $nonceStr,
             "timestamp" => $timestamp,
-            //"url"       => $url,
+            "url"       => $jsUrl,
             "signature" => $signature,
-            //"rawString" => $string
+            "rawString" => $string
         );
 
         return $signPackage;
     }
 
-    public function getAllInfo($code)
+    public function getAllInfo($code, $jsUrl)
     {
         $reader = array();
 
@@ -141,7 +142,7 @@ class weixin_public
             return $jsTokenInfo;
         }
 
-        $signPackage = self::getSignPackage($jsTokenInfo['ticket']);
+        $signPackage = self::getSignPackage($jsTokenInfo['ticket'], $jsUrl);
         $reader['js_sign'] = $signPackage;
 
         return $reader;