<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                # 在AngularJS應用中集成微信認證授權遇到的坑 **[注:請點擊此處進行充電!](http://blog.csdn.net/sunhuaqiang1/article/details/50158499)** ### 前言 ? ? ? 項目開發過程中,移動端新近增加了一個功能“微信授權登錄”,由于自己不是負責移動端開發的,但最后他人負責的部分未達到預期效果。不能準確實現微信授權登錄。最后還得靠自己做進一步的優化工作,誰讓自己是負責人呢?原來負責人就是負責最后把所有的BUG解決掉。 首先,熟悉一下微信授權部分的源代碼,如下所示: ~~~ /*-------------- 微信授權登陸 --------------*/ // 擴展 API 加載完畢后觸發“plusready"事件 document.addEventListener("plusready", function() { // 擴展API加載完畢,現在可以正常調用擴展API plus.oauth.getServices(function(services) { // services.length可獲取當前運行環境支持授權登錄認證服務數目 if (services.length > 0) { auths = services; } else { alert("當前運行環境不支持授權登錄認證服務!"); } }, function(e) { alert("獲取分享服務列表失敗:" + e.message + " - " + e.code); }); }, false); // 微信授權登錄操作 $scope.authLogin = function(){ for(var i = 0; i < auths.length; i++){ console.log(auths[i].description); if(auths[i].description == "微信"){ var s = auths[i]; break; } } if (!s.authResult) { console.log("微信尚未授權"); s.login( //登錄認證成功 function(e){ console.log("微信登錄認證成功!"); var objuser = s.userInfo; var uname = objuser.nickname; console.log(objuser.nickname); localStorage.uid = uname; localStorage.logined = "2"; $rootScope.userinfo = { 'logined': "2", 'username': uname }; console.log(localStorage.logined); $scope.set_defaultaddr(); //登錄后查詢訂單 $scope.getBillBadge(); if (sessionStorage) { console.log(sessionStorage.getItem("hisURL")); if(sessionStorage.getItem("hisURL")=='/tab/med_search') $rootScope.familyBox(); $location.path(sessionStorage.getItem("hisURL")); } }, //登錄認證失敗 function(e){ alert( "登錄認證失敗!" ); }); }else{ console.log("已經登錄認證!"); } ~~~ 授權認證步驟:獲取授權登錄認證服務——>授權登錄認證服務 手機之間在運行同一款軟件時由于系統差異也是存在表現差異。如下圖所示,上圖為紅米Android4.4.4版本上的測試結果,下圖為魅族5.0.1版本上的測試結果。很明顯下圖手機不能實現定位功能。 更明顯的差異存在于授權部分,調用授權服務時返回的數組內容不同,從下圖可明顯看出微信與QQ在返回數組中的位置不同。 ?![](https://box.kancloud.cn/2016-03-02_56d6ad91451a4.jpg) ? ?![](https://box.kancloud.cn/2016-03-02_56d6ad915c437.jpg) ? ? ? ?參考文獻:[http://www.html5plus.org/doc/zh_cn/oauth.html](http://www.html5plus.org/doc/zh_cn/oauth.html) ? ? ? ? ? ? ? ? ? ? ? ?[http://ask.dcloud.net.cn/article/192](http://ask.dcloud.net.cn/article/192) 平臺支持: Android?-?2.2+?(不支持) iOS?-?5.0+?(不支持) 注:Js中判斷兩字符串是否相等,使用“==”判斷。不能使用equals。 又出現了問題,在手機上調試一切正常,等到打包成APK就出現不能授權(提示登錄認證失敗)的問題。 alert(?"登錄認證失敗!"?+?e.message+"?-?"+e.code);如下圖所示: ?![](https://box.kancloud.cn/2016-03-02_56d6ad9174f9f.jpg) 還是直接在手機測試,出現下面的現象: ?![](https://box.kancloud.cn/2016-03-02_56d6ad9199e81.jpg) 感覺處于一種死循環的狀態,但自己也一時找不到可以修改的地方。 ### 注: 微信登錄配置的參數必須要提交在線打包才能生效(真機調試的時候使用的是HBuilder基座的參數) 折騰了一天,微信授權登錄還是未能完成。,頭痛.... 好吧,我輸了。 ### 第二天晚上 繼續昨天未完的問題。嘗試根據返回的錯誤信息進行修正。 通過查閱資料終于發現問題所在了。授權中配置的參數必須來自微信開放平臺申請所得,而非公眾平臺。那么二者之間又存在什么樣的區別呢?接下來繼續講解。 ![](https://box.kancloud.cn/2016-03-02_56d6ad91b0850.jpg) ### 微信開放平臺和公眾平臺的區別? 簡單來講,微信公眾平臺是我們常見的公眾號,包括訂閱號、服務號和企業號,主要用于不具備太強技術開放能力,擁有一定運營能力的品牌、商戶、媒體以及個人,作為一個自媒體平臺或者服務窗口來用,是面向更廣大的人群使用的。 微信開放平臺是一個開發者平臺,針對的是有較強技術開發能力、能夠研發同微信對接的應用開發者來使用的,面向的是技術公司和開發者,不是面向所有人都可以使用的。 因此對于分不清二者區別的人來講,用公眾平臺就對了,能用得上開放平臺的人肯定都是對開放平臺功能有一定了解的人群。 那么,微信開放平臺與公眾平臺注冊所得信息通用嗎? 答案是NO!因為注冊時就不允許使用同一郵箱注冊。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看