微信授權分兩種:一、手動授權(snsapi_userinfo) 二、自動授權(snsapi_base)
手動授權顧名思義就是需要我們手動的去授權如圖:
默認授權就是默認就授權完了,比如你關注一個公眾號點進去關注后做一些操作他不會提示如上圖所展示的讓你確認登錄,因為其以自動為你注冊完了。
微信授權可以分成以下幾步來做:
1、引導用戶進入授權頁面同意授權,獲取code
2、通過code換取網頁授權access_token(與基礎支持中的access_token不同)
3、如果需要,開發者可以刷新網頁授權access_token,避免過期
4、通過網頁授權access_token和openid獲取用戶基本信息(支持UnionID機制)
第一步獲取code
第二步獲取token
第三步(可以不用看需求)
第四步獲取用戶信息
我之前做的比較簡單接收前台傳給我的token獲取code,通過code獲取到openid,然后通過openid再獲取用戶信息,同時將用戶的openid保存下來,以便用戶下次登錄方便,為什么這么說呢!因為用戶每次進來我們都去請求微信的話很耗資源,我們只需要將用戶的openid保存下來,以后登錄的時候只需要對比我們數據庫里面的信息就可以了。
微信支付我們這里講兩種實現方式,一種是在頁面實現一種是在后台實現,
其實微信支付的話人微信都把接口什么的都准備好了只需要調用就可以了而且還准備了demo當然他們的demo很爛,其實微信支付和微信授權差不多都是拼鏈接調用把微信要的參數傳過去,做好回調就可以了,
1.微信統一下單
URL地址:https://api.mch.weixin.qq.com/pay/unifiedorder
weixinGatewayUrl=https://api.mch.weixin.qq.com/pay/unifiedorder
參數詳見微信統一下單文檔
再頁面操作的話就在頁面拼好鏈接后將微信需要的參數sppid,商戶號等等必須的參數傳過去這些參數是你微信提供給你的,appid是在你的微信公眾號里面,商戶號什么的是你申請微信支付后微信提供給你的,這些參數是固定的,在頁面操作寫一個回調頁面接收微信返回來的數就可以了,后台操作的話方便起見我們將參數變成實體或常量方便調用,在后台拼鏈接通過HttpResponse response = HttpRequest.get() 這種方式就可以請求了,當然這只是其中一種,還有很多不用非用這種僅做參考而已。將返回的參數做好保存及返回給前台頁面。
微信支付(app支付、公眾號支付、掃描支付、企業支付,刷卡支付)好幾種,我這里講的不是很詳細,但是大概概括了,主要是網上的太啰嗦的,就那么一點東西將那么多!