日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

php 自定义菜单 openid,微信公众平台开发(99) 自定义菜单获取OpenID

發布時間:2023/12/4 php 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php 自定义菜单 openid,微信公众平台开发(99) 自定义菜单获取OpenID 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

關鍵字 微信公眾平臺 自定義菜單 OpenID

作者:方倍工作室

原文:http://www.cnblogs.com/txw1958/p/weixin-menu-get-openid.html

在這篇微信公眾平臺開發教程中,我們將介紹如何在自定義菜單中獲得用戶的OpenID。

本篇開發教程的實質是微信自定義菜單及OAuth2.0授權的靈活運用。

本文分為以下兩個部分:

擁有高級接口權限時的獲取(基于view事件)

沒有高級接口權限時的獲取(基于click事件)

一、擁有高級接口權限

擁有高級接口權限時,我們使用OAuth2.0授權的方式來獲取。

在設置好授權回調頁面域名之后,我們需要構造菜單,為了方便同時講解下一小節,我們菜單構造如下

{

"button": [

{

"type": "click",

"name": "圖文獲取",

"key": "圖文"

},

{

"type": "view",

"name": "授權獲取",

"url": "https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx0738856156f7323c&redirect_uri=http://israel.sinaapp.com/oauth2/&response_type=code&scope=snsapi_base&state=1#wechat_redirect"

}

]

}

菜單的構成中,核心思想在于url是一個授權回調url,這樣才能在菜單點擊的時候使用oauth2.0授權獲得openid

這樣將生成兩個菜單如下

當點擊 授權獲取的時候,將訪問授權頁面,頁面將使用OAuth2.0的方式獲得openid。

跳轉后顯示如下:

二、沒有高級接口權限

對于沒有高級接口權限的賬號,就不能使用view事件獲得OpenID,需要使用click事件來實現

實現原理就是獲得接收消息中的FromUserName值,并且在url中構造openid的參數即可

在自定義菜單中響應代碼如下

private function receiveEvent($object)

{

$content = "";

switch ($object->Event)

{

case "subscribe":

$content[] = array("Title"=>"歡迎關注方倍工作室", "Description"=>"", "PicUrl"=>"http://discuz.comli.com/weixin/weather/icon/cartoon.jpg", "Url" =>"http://m.cnblogs.com/?u=txw1958");

break;

case "CLICK":

switch ($object->EventKey)

{

case "圖文":

$content[] = array("Title"=>"OpenID", "Description"=>"你的OpenID為:".$object->FromUserName, "PicUrl"=>"", "Url" =>"http://m.cnblogs.com/?u=txw1958&openid=".$object->FromUserName);

break;

}

break;

}

if(is_array($content)){

$result = $this->transmitNews($object, $content);

}else{

$result = $this->transmitText($object, $content);

}

return $result;

}

運行后效果如下所示。

Java微信公眾平臺開發_04_自定義菜單

一.本節要點 1.菜單相關實體類的封裝 參考官方文檔中的請求包的內容,對菜單相關實體類進行封裝. 2.數據傳輸格式—JSON 自定義菜單中請求包的數據是Json字符串格式的,請參見:??Java_數據 ...

微信公眾平臺開發—利用OAuth2.0獲取微信用戶基本信息

在借鑒前兩篇獲取微信用戶基本信息的基礎下,本人也總結整理了一些個人筆記:如何通過OAuth2.0獲取微信用戶信息 1.首先在某微信平臺下配置OAuth2.0授權回調頁面: 2.通過appid構造url ...

node微信公眾號開發--設置自定義菜單

var request = require("request"); const querystring = require("querystring"); re ...

微信公眾號開發——創建自定義菜單(PHP版)

微信公眾平臺開發教程--方培工作室,PHP語言版本

準備工作 微信公眾平臺的注冊 介紹如何注冊一個微信公眾賬號. 入門教程 微信公眾平臺開發入門教程 內容:1.申請SAE作為服務器; 2.啟用開發模式; 3.微信公眾平臺PHP SDK; 4.接收發送消 ...

Senparc.Weixin.MP SDK 微信公眾平臺開發教程(九):自定義菜單接口說明

上一篇介紹了如何通過通用接口獲取AccessToken,有了AccessToken,我們就可以來操作 ...

第六篇 :微信公眾平臺開發實戰Java版之如何自定義微信公眾號菜單

我們來了解一下 自定義菜單創建接口: http請求方式:POST(請使用https協議) https://api.weixin.qq.com/cgi-bin/menu/create?access_to ...

Senparc.Weixin.MP SDK 微信公眾平臺開發教程(十七):個性化菜單接口說明

前不久微信上線了個性化菜單接口,Senparc.Weixin SDK也已經同步更新. 本次更新升級Senparc.Weixin.MP版本到v13.5.2,依賴Senparc.Weixin版本4.5.4 ...

第九篇 :微信公眾平臺開發實戰Java版之如何實現自定義分享內容

第一部分:微信JS-SDK介紹 微信JS-SDK是微信公眾平臺面向網頁開發者提供的基于微信內的網頁開發工具包. 通過使用微信JS-SDK,網頁開發者可借助微信高效地使用拍照.選圖.語音.位置等手機系統 ...

隨機推薦

圖解集合6:LinkedHashMap

初識LinkedHashMap 上兩篇文章講了HashMap和HashMap在多線程下引發的問題,說明了,HashMap是一種非常常見.非常有用的集合,并且在多線程情況下使用不當會有線程安全問題. 大 ...

使用selenium+phantomJS實現網頁爬取

有些網站反爬蟲技術設計的非常好,很難采用WebClient等技術進行網頁信息爬取,這時可以考慮采用selenium+phantomJS模擬瀏覽器(其實是真實的瀏覽器)的方式進行信息爬取.之前一直使用的 ...

MMORPG大型游戲設計與開發(客戶端架構 part9 of vegine)

時間在人們的生活中是多么重要的東西,如果打亂了時間,不知道這個時間會成什么樣子.在客戶端中,自然也有時間模塊,因為不同的時間可能會處理不同的事情,特別是在追求高度自由化的同時,時間也成為了一個很重要的 ...

【轉】七種常見閾值分割代碼(Otsu、最大熵、迭代法、自適應閥值、手動、迭代法、基本全局閾值法)

http://blog.csdn.net/xw20084898/article/details/17564957 一.工具:VC+OpenCV 二.語言:C++ 三.原理 otsu法(最大類間方差法, ...

【轉】準確理解CSS clear:left/right的含義及實際用途

零.說點什么 好久沒更新了.并不是在折騰什么大作,而是廣度學習與實踐中,加上婚禮等諸多大事,所以產出較少. 今天這篇也只是小作,博客是自己很好的學習工具,只要我學習不止,博客也會不斷更新的. 我們平時 ...

《jQuery風暴》第2章 必須知道的JavaScript知識

第2章 必須知道的JavaScript知識 JavaScript是jQuery應用的基礎,掌握JavaScript這門語言是使用jQuery的基礎條件.本章不會全面細致的講解JavaScript的全部 ...

如何使用UIAutomation進行iOS 自動化測試(Part I)

轉自:http://www.cnblogs.com/vowei/archive/2012/08/10/2631949.html 寫在前面 研究iOS的自動化測試也有些日子了,剛開始的時候,一直苦于找不 ...

React-Native post和get請求

post: fetchData (title) { fetch(REQUEST_URL, { method: 'POST', headers: { 'Accept': 'application/jso ...

Mac 修改用戶名

系統偏好設置 > 用戶與群組 > 解鎖 > 用戶 > 右鍵 > 高級選項 > 全名

python函數傳入參數(默認參數、可變長度參數、關鍵字參數)

1.python中默認缺省參數----定義默認參數要牢記一點:默認參數必須指向不變對象! 1 def foo(a,b=1): 2 print a,b 3 4 foo(2) #2 1 5 foo(3,1 ...

總結

以上是生活随笔為你收集整理的php 自定义菜单 openid,微信公众平台开发(99) 自定义菜单获取OpenID的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。