與微信公衆API對接相關事宜(包括snsapi_login,snsapi_base ,snsapi_userinfo)

開發和搭建前所需(仔細必看到頭)

注意!微信公衆號必須爲服務號(絕對不是在訂閱號文件夾裏的那種的,而是直接類似一個微信用戶那種),同時需要微信認證(絕對要認證),訂閱號沒有調用接口的權限,必須是服務號才行。

1:需要管理員在微信公衆平臺登錄(登錄主管理員賬號,或者聯繫主管理員讓其登錄進行)給予開發者:

運營者(小管理員)權限

2:查看 開發-基本設置中:

其中id和secret要記住(沒有就新設置,有千萬別重置),有了這倆才能用接口換token值進行開發

3:修改IP白名單,在已有的基礎上新增自己的,http://ip.qq.com/可以查看自己IP

這樣開發時調用接口纔不會被屏蔽

4:!!!!重點,如果想要調用客服功能(即通過公衆號給某個人發送消息),還需要在功能中開通客服功能才行!

在你之前就已經開通、創建的,可以直接去看  已知信息 了,當然,最好還是接着看。

沒開通的,開通完畢後,不會有客服,需要你自己主動創建一個客服(例如我們創建·文控雲小助手)

創建完畢後編輯,上傳頭像,然後綁定主管理者的微信

!注意,上面的必須做!沒有客服賬號,無法調用發消息接口。

雖然調用接口也可以創建客服,修改客服,但是能手動的不要去打代碼!(因爲懶)

目前已經可以進行發送消息了,不過由於不活躍用戶會出現消息錯誤,我們還需要模板消息發送接口,故而我們還要開通一個功能。

申請通過後,我們還需要設置裏面的模板。

選定心意的模板後,纔可以調用模板接口發送消息,用來給不活躍用戶發送消息。

開發已知所需信息(可能不全)

微信接口開發文檔:

https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1445241432

微信公衆號(服務號):??????????

微信公衆號賬號:??????????????

微信公衆號密碼:??????????

開發者ID(AppID):??????????????

開發者密碼(AppSecret):????????????????

開發第一步

目前已知問題解決的方式

1:access_token因爲太長,如果被複制到別的地方可能會多出空格(比如txt中)

因此,如果access_token調用接口時返回錯誤問題,賦值後一定要查看

access_token中間是否是沒有空格的(有的話刪除,複製到txt中一般會多2個)

2:接口基本都有調用次數,請節省使用,尤其是access_token接口,只有2000次,

如果不清楚具體次數,就要上微信公衆平臺看。

3:用戶信息只能查找到userid和微信暱稱,不能知道用戶的真實姓名

解決辦法,在原項目數據庫中添加一條wxId,然後根據暱稱查詢到微信的id添加到原項目的wxid中,每次發消息調用原數據庫的wxid

Postman-Eg

15_C1TWfhMJh6v_EgF2GdU667b6j1a4BiSS8RwZwBFiBLHrqr5HDjt0FTWk3e9SOJ-KY3F8lv6Q0WIAv6fOLFhCTny8DBSSWMYDUXoDran4OlCgVvSYsgMa7n2cWqOoU8RAdIp4Wajc766KGaGOFXAhAEAQIL

-------------------查詢從開頭是10000名用戶-----------------------

https://api.weixin.qq.com/cgi-bin/user/get?

access_token=15_C1TWfhMJh6v_EgF2GdU667b6j1a4BiSS8RwZwBFiBLHrqr5HDjt0FTWk3e9SOJ-

KY3F8lv6Q0WIAv6fOLFhCTny8DBSSWMYDUXoDran4OlCgVvSYsgMa7n2cWqOoU8RAdIp4Wajc766KGaGOFXAhAEAQIL&next_openid

=

{

    "total": 1,   關注該公衆賬號的總用戶數

    "count": 1,   拉取的OPENID個數,最大值爲10000

    "data": {                列表數據,OPENID的列表

        "openid": [

            "odrKA1jUSSXZyfAcRfxVHp_RzA8g"

        ]

    },

    "next_openid": "odrKA1jUSSXZyfAcRfxVHp_RzA8g"      拉取列表的最後一個用戶的OPENID

}

-------------eg----根據id獲取用戶信息---------------------------------------------------

https://api.weixin.qq.com/cgi-bin/user/info?

access_token=15_C1TWfhMJh6v_EgF2GdU667b6j1a4BiSS8RwZwBFiBLHrqr5HDjt0FTWk3e9SOJ-

KY3F8lv6Q0WIAv6fOLFhCTny8DBSSWMYDUXoDran4OlCgVvSYsgMa7n2cWqOoU8RAdIp4Wajc766KGaGOFXAhAEAQIL&openid=odrK

A1jUSSXZyfAcRfxVHp_RzA8g&lang=zh_CN

{

    "subscribe": 1,

    "openid": "odrKA1jUSSXZyfAcRfxVHp_RzA8g",

    "nickname": "XXXX",

    "sex": 1,

    "language": "zh_CN",

    "city": "XXX",

    "province": "XXXXX",

    "country": "中國",

    "headimgurl":

"http://thirdwx.qlogo.cn/mmopen/4hJDDPYJRchbMbGdtdL4ZfxmvN5M7okibaQ2MTnjLTllnBH2ibq0QLzUj40Nza4tQBEwhJt

a2rHwnZmDTTbIuQJmrHmIIWOo5f/132",

    "subscribe_time": 1541041913,

    "remark": "",

    "groupid": 0,

    "tagid_list": [ ],

    "subscribe_scene": "ADD_SCENE_SEARCH",

    "qr_scene": 0,

    "qr_scene_str": ""

}

--------------------獲取客服-------------------------------------------------------

https://api.weixin.qq.com/cgi-bin/customservice/getkflist?

access_token=15_C1TWfhMJh6v_EgF2GdU667b6j1a4BiSS8RwZwBFiBLHrqr5HDjt0FTWk3e9SOJ-

KY3F8lv6Q0WIAv6fOLFhCTny8DBSSWMYDUXoDran4OlCgVvSYsgMa7n2cWqOoU8RAdIp4Wajc766KGaGOFXAhAEAQIL

{

    "kf_list": [

        {

            "kf_account": "test1@test",

            "kf_headimgurl": "",

            "kf_id": 2001,

            "kf_nick": "文控雲小助手"

        }

    ]

}

--------------------創建一個新的--------------------------------------------------------------

https://api.weixin.qq.com/customservice/kfaccount/add?

access_token=15_C1TWfhMJh6v_EgF2GdU667b6j1a4BiSS8RwZwBFiBLHrqr5HDjt0FTWk3e9SOJ-

KY3F8lv6Q0WIAv6fOLFhCTny8DBSSWMYDUXoDran4OlCgVvSYsgMa7n2cWqOoU8RAdIp4Wajc766KGaGOFXAhAEAQIL

{

     "kf_account" : "test1@test",

     "nickname" : "XXXX小助手",

     "password" : "123456"

}

{

  "errcode": 0,

  "errmsg": "ok"

}

--------------------發消息-----注意,該方法只能試用活躍用戶,不活躍用戶必須用模板消息的模式,具體我就不多說了-----------------

https://api.weixin.qq.com/cgi-bin/message/custom/send?

access_token=15_C1TWfhMJh6v_EgF2GdU667b6j1a4BiSS8RwZwBFiBLHrqr5HDjt0FTWk3e9SOJ-

KY3F8lv6Q0WIAv6fOLFhCTny8DBSSWMYDUXoDran4OlCgVvSYsgMa7n2cWqOoU8RAdIp4Wajc766KGaGOFXAhAEAQIL

{

    "touser":"odrKA1jUSSXZyfAcRfxVHp_RzA8g",

    "msgtype":"text",

    "text":

    {

         "content":"你好啊!"

    }

}

 

{

  "errcode": 0,

  "errmsg": "ok"

}

======重點來了,上述僅僅只是公衆平臺發消息的演示=======

如果需要掃碼登錄如:  PC端展示二維碼,用微信掃碼即可獲取用戶信息用於驗證登錄。

此時此刻就需要了解另外一件微信坑爹的事情!

微信公衆平臺   與    微信開放平臺  !!!!

這倆是不一樣的!注意,不一樣的!

具體怎麼不一樣開發過微信對接口的人都知道,能說出一肚子苦水來,我就不一一解說了。

我只想說,如果你想實現:PC端展示二維碼,用微信掃碼即可獲取用戶信息用於驗證登錄。

必須瞭解:snsapi_login,snsapi_base ,snsapi_userinfo 三者之間的區別

後兩者都是公衆平臺提供,只能在移動端使用的掃碼獲取用戶信息,而只有 snsapi_login 權限能夠在PC獲取用戶信息

爲此,我們需要在   微信開放平臺  註冊任意賬號,並且配置  開發者權限及創建應用 

然後,上交300塊大洋給賬號,才能調用 snsapi_login 相關接口,實現PC端掃碼登錄!

詳情需要上網搜關鍵字,就能得到完整答案,我只是給看管提個醒。

注意,一定要區分:  微信公衆平臺   與    微信開放平臺  !!!!

=====================End=====================================

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章