web微信開發前期准備最新詳細流程


一、申請配置測試公眾號與配置本地服務器  

1、打開瀏覽器,輸入:http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login,微信掃碼確認登錄

 

2、進入到該頁面,可以看到測試公眾號的微信名,以及非常重要的appID和

 

3、填寫服務器url,這個地址是要可以外網訪問的,同時給微信服務器認證的,所以分兩步走,一是先弄個外網可以訪問的服務器地址,二是在該地址下放置微信官方要求的php文件

  • 網上許多教程都是配置外網服務器,比如百度雲服務或者新浪雲服務,不利於提高開發效率,本人推薦配置本地服務器,主要是通過花生殼與阿帕奇,具體怎么配置外網可訪問的本地服務器,請看我這篇文章的前半部分:http://www.cnblogs.com/ahao68/p/6250398.html

        我的配置以及本地服務器文件夾如下,因此http://162c24l811.iok.la是我的服務器地址,但是這不是微信想要的哦

         

  

         http://162c24l811.iok.la/core/wx_sample.php

 

 

4、填寫Token,可以自行填寫,但是必須與wx_sample.php中的Token一致,打開wx_sample.php即可看到,可修改

 

5、填寫域名,域名即為花生殼給你的域名,我的是162c24l811.iok.la

 到此測試公眾號與本地服務器配置完畢。

 

二、配置調用微信接口需要的access_token和簽名

     微信有寫好各種語言版本的,自己突然暫時找不到,就在這里分享自己的雲盤鏈接吧:http://pan.baidu.com/s/1gfgKOHP,我用的是php語言版。不過,里面有些東西還是要自己配置,不懂php還是難搞得的,所以,送給看到這篇文章又有需要的人一個禮,分享個基本弄好的,簡單配置就可以用的版本吧:http://pan.baidu.com/s/1sk9qySl

目錄如下:

 

     接下來說說怎么配置吧:

1、access_token.json和jsapi_ticket.json建立好內容保持為空哦,這里是接收自動更新生成的access_token和jsapi_ticket用的。

2、配置get_jjsdk.php,require_once后為jssdk.php的路徑,我都是放在一起的,直接寫jssdk.php;$jssdk = new JSSDK()里面前兩個更換為你的測試公眾號的appID和

3、配置jssdk.php,把以下file_get_contents后的改為你的json,注意路徑,這里是生成簽名等寫入json文件的地方

到此不出意外便成功了。

 

三、開始調用接口和使用微信調試工具


1、除了微信網頁js-sdk等不能通過微信開發文檔帶的在線調試工具開發的功能,其他均可按照官方文檔的要求,通過在線調試工具直接操作和寫上自己的代碼,微信公眾號會更新相應的功能,比如自定義菜單、語音回復等。

 

2、關於使用微信jssdk進行開發,首先先在html頁面引入微信js(官方文檔為1.1版本,部分功能不支持蘋果,比如蘋果不支持1版本的圖片預覽,在這里貢獻找了好久的1.2版本):<script src="https://res.wx.qq.com/open/js/jweixin-1.2.0.js "></script>

3、創建一個js文件引入,這個文件用來請求之前配置好的php文件,更新生成和緩存簽名等,以及初始化微信接口,即config。

//獲取當前url
var host = window.location.host;
//請求的php地址
get_jjsdk='http://'+window.location.host+'/core/get_jjsdk.php';
$(function(){ 
       var url = window.location.href;
        $.ajax({
          url : get_jjsdk,
          type: "post", 
            data:{'url':url},
          error : function(XMLHttpRequest,textStatus, errorThrown) {
                    console.log(XMLHttpRequest.status);//200客戶端請求已成功
                    console.log(XMLHttpRequest.readyState);//4響應內容解析完成,可以在客戶端調用了
                    console.log(textStatus);//parsererror
          },
            success:function(data){
                //返回的簽名時間戳id等等
                  var jssdk = data;
                //console.log(data);
                //初始化接口config
                  wx.config({
                        debug: false , // 開啟調試模式,調用的所有api的返回值會在客戶端alert出來,若要查看傳入的參數,可以在pc端打開,參數信息會通過log打出,僅在pc端時才會打印。
                        appId: jssdk.appId, // 必填,公眾號的唯一標識
                        timestamp:jssdk.timestamp, // 必填,生成簽名的時間戳
                        nonceStr: jssdk.nonceStr, // 必填,生成簽名的隨機串
                        signature: jssdk.signature,// 必填,簽名,見附錄1
                        // 必填,需要使用的JS接口列表,所有JS接口列表見附錄2
                      jsApiList: [
                          'checkJsApi',
                          'onMenuShareTimeline',
                          'onMenuShareAppMessage',
                          'onMenuShareQQ',
                          'onMenuShareWeibo',
                          'hideMenuItems',
                          'showMenuItems',
                          'hideAllNonBaseMenuItem',
                          'showAllNonBaseMenuItem',
                          'translateVoice',
                          'startRecord',
                          'stopRecord',
                          'onRecordEnd',
                          'playVoice',
                          'pauseVoice',
                          'stopVoice',
                          'uploadVoice',
                          'downloadVoice',
                          'chooseImage',
                          'previewImage',
                          'uploadImage',
                          'downloadImage',
                          'getNetworkType',
                          'openLocation',
                          'getLocation',
                          'hideOptionMenu',
                          'showOptionMenu',
                          'closeWindow',
                          'scanQRCode',
                          'chooseWXPay',
                          'openProductSpecificView',
                          'addCard',
                          'chooseCard',
                          'openCard'
                      ]
                          });    
            }
        })  
})

4、開始根據官方文檔jssdk開發想要的功能吧~~,這里舉例選擇圖片和上傳圖片接口的簡單案例:

wx.ready(function () {
    //點擊觸發選擇圖片
$('.chooseImage').click(function(){

    wx.chooseImage({
        count: 9, // 默認9
        sizeType: ['original', 'compressed'], // 可以指定是原圖還是壓縮圖,默認二者都有
        sourceType: ['album', 'camera'], // 可以指定來源是相冊還是相機,默認二者都有
        success: function(res) {
            console.log(res);
            images.localId = res.localIds;
            alert('已選擇 ' + res.localIds.length + ' 張圖片');
          var i=0;length = images.localId.length;

            function upload() {
                //上傳圖片到微信服務器
                //if (images.localId.length == 0) {
                //    alert('請先使用 chooseImage 接口選擇圖片');
                //    return;
                //}
                wx.uploadImage({
                    localId: images.localId[i],
                    isShowProgressTips: 1, // 默認為1,顯示進度提示
                    success: function(res) {
                        console.log(res);
                        i++;
                      if (i < length) {
                            upload();
                        }else{
                           
                        }

                    },
                    fail: function(res) {
                        alert(JSON.stringify(res));
                    }
                });
            }
            upload();
           



        }
    });
});

 PS:如果你接手的不是自己一手開發的微信網頁,那么你首先要找后台要接口地址和Token;比如我的一個項目接口和Token是后台配置的,直接在本地運行會出現報錯:

后台給我配置是這樣的:

除了把這個接入微信測試公眾號,記得集成服務器也得修改地址,我的是阿帕奇xampp,每次修改記得重啟集成服務器!!

 

再次訪問項目入口文件,ok了:

 

 



 

 

 
        

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM