微信公眾平台開發入門教程[2020版]


關鍵字:微信公眾平台開發
作者:方倍工作室

 

在這篇微信公眾平台開發教程中,我們假定你已經有了PHP語言程序、MySQL數據庫、計算機網絡通訊、及HTTP/XML/CSS/JS等基礎。

我們將使用微信公眾賬號方倍工作室作為講解的例子,二維碼見左側。

本系列教程將引導你完成如下任務:

  1. 創建新浪雲計算平台應用
  2. 啟用微信公眾平台開發模式
  3. 體驗常用接收消息及發送消息類型
  4. 了解數據收發原理及消息格式

 

第一章 申請服務器資源

創建新浪雲計算應用

申請賬號

我們使用SAE新浪雲計算平台作為服務器資源,並且申請PHP環境+MySQL數據庫作為程序運行環境。
申請地址為:

http://www.sinacloud.com/

直接點擊上述網址,可以看到右上角微博登錄的鏈接。

點擊進入之后,使用新浪微博賬號登錄 

登錄之后,按照提示注冊個人信息即可。 

 

創建新應用

回到首頁,在菜單頂部選擇 控制台 ,再選擇 雲應用SAE 

進入SAE應用列表

點擊創建應用按鈕,這時會彈出提示禁止放置違法違規內容等信息,點擊我已確認,彈出如下窗口。

 

開發語言選擇PHP,運行環境為標准環境,語言版本5.3。二級域名自己想一個名字,也可以就直接用自己的QQ號。應用名稱可以也隨便填一個。

此處配置和本教程必須完全一樣!!!

此處配置和本教程必須完全一樣!!!

此處配置和本教程必須完全一樣!!!

在右方的計費及配額說明中列出費用,表示這種配置是免費使用的(不超過免費額度前提下),然后點擊右方的確認創建

 

創建成功后,進入到應用首頁中。

 

創建版本

在運行環境管理-代碼管理中,列出了版本列表,點擊創建新版本,版本號中填1

創建成功之后,獲得了版本訪問鏈接

 

上傳代碼

下述代碼是一個微信接口文件,看不懂沒有關系,你可以暫時不用弄明白它的意思。

我們將使用上述代碼與微信公眾平台對接。直接下載方倍工作室已經壓縮好的上述代碼的zip文件點此進入下載

點擊 上傳代碼包

彈出上傳窗口,將文件上傳到上述地址。

上傳完成之后,正文異步任務列表中顯示 代碼導入 執行成功。

 

查看源碼

在版本列表中,點擊 在線編輯

進入到新浪雲的在線編輯器中,右鍵點擊 sinacloudindex.php 文件,然后選擇刪除,將該文件刪除掉。

然后雙擊 index.php文件,可以看到如下內容則表示文件已經成功上傳了

只需要我們自己上傳的index.php和config.yaml文件就可以了。多余的要刪除!!!

實名認證

新浪SAE要求用戶實名認證之后才能正常使用新浪雲。實名認證是免費的。認證后可獲得200個雲豆。

在左側目錄列表中,找到實名認證目錄,在頁面中上傳身份證並等待審核,審核成功之后,如下圖所示。

 

充值(本步驟可選擇性進行)

新浪雲SAE實行的是配額免費+超額付費的方式,相關標准請查看SAE價格體系介紹。初期對於大部分用戶來說免費配額已夠用,如果您將來使用量比較大建議預先至少充值100元獲得10000雲豆,以免超額后應用被禁用而影響業務。

第二章 啟用開發模式

微信公眾平台開發模式

①個人開發者使用測試號

個人學習開發建議使用測試號 

微信測試號地址:http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login 

登錄后,在接口配置信息中填寫剛才生成的URL地址和Token.

URL地址就是剛才生成的的二級域名地址:http://fangbei.applinzi.com/ 。

Token在程序中固定為 weixin

填寫好提交

 

頂部顯示配置成功

如果提示“token驗證失敗”,多重次幾次。

 

②企業開發者並且有訂閱號或者服務號

微信公眾平台地址:https://mp.weixin.qq.com 

登錄微信公眾平台后台,在左側列表中最下方,找到“ 基本配置 ”,點擊進入

進入服務器配置填寫框。

點擊“修改配置”按鈕

此處的URL為上篇中介紹的雲應用的域名,而Token在index.php中定義為weixin。EncodingAESKey則不用填,點擊“隨機生成”讓自動生成一個,消息加解密方式選擇“明文模式”,然后點擊“提交”按鈕。

 

在彈出的提示框中,點擊“確定”

配置修改后如圖所示,再點擊“啟用”按鈕

詢問“是否確定開啟服務器配置”,點擊“確定”

如果提示“token驗證失敗”,可以先重次幾次,微信服務器有時候不穩定。另外新浪SAE要求進行實名認證,請先上傳身份證進行實名認證並通過審核后再試!

如果還是失敗,請先用微信調試器測試一下url和token是否正確,點此查看詳細測試方法

成功啟用后如圖。

恭喜,你成功啟用開發模式。

 

自動回復

在上面的例子中,實現了一個發送“?”就能回復當前時間的功能。
效果如下:

至此,你的微信公眾平台賬號已經實現自動回復了。 

 

第三章 常用消息類型接收與發送

 

全能型消息代碼代碼

你可以使用微信支付購買我們的全能版微信開發入門教程代碼,僅需要¥1元,支持一下我們。

微信掃描二維碼關注后返回購買圖文鏈接,然后進入購買:

將代碼下載后按照上述同樣的方法配置到接口中,可以體驗到更多,更強的功能。

效果圖如下

  

  

  你將體驗到微信公眾賬號中最常見的接收消息及發送消息的類型。

 

 

第四章 數據收發原理及消息數據格式

 

★ 本章是理論部分,初學者會比較難以理解,不用太過追究,看不懂可以跳過去。

開發模式成為開發者時的消息校驗原理

在開發者首次提交驗證申請時,微信服務器將發送GET請求到填寫的URL上,並且帶上四個參數(signature、timestamp、nonce、echostr),開發者通過對簽名(即signature)的效驗,來判斷此條消息的真實性。

此后,每次開發者接收用戶消息的時候,微信也都會帶上前面三個參數(signature、timestamp、nonce)訪問開發者設置的URL,開發者依然通過對簽名的效驗判斷此條消息的真實性。效驗方式與首次提交驗證申請一致。

參數 描述
signature 微信加密簽名,signature結合了開發者填寫的token參數和請求中的timestamp參數、nonce參數。
timestamp 時間戳
nonce 隨機數
echostr 隨機字符串

開發者通過檢驗signature對請求進行校驗(下面有校驗方式)。若確認此次GET請求來自微信服務器,請原樣返回echostr參數內容,則接入生效,成為開發者成功,否則接入失敗。

加密/校驗流程如下:
1. 將token、timestamp、nonce三個參數進行字典序排序
2. 將三個參數字符串拼接成一個字符串進行sha1加密
3. 開發者獲得加密后的字符串可與signature對比,標識該請求來源於微信

啟用接口是由代碼中的checkSignature()函數來實現校驗的。如果對這一原理難以理解,可以暫時不用深究,繼續看下面

 

成為開發者后消息收發時的原理

上一章節中圖,當用戶發送一個“?”時,系統回復了一個時間

這一原理的消息流程圖如下所示。

從上圖可以看出,用戶在發送一個?后,微信服務器將組裝一個消息發送給我們自己的服務器,自己的服務器然后回復一個時間,並且將該時間也按一定的規則組裝,回復給公眾賬號,公眾賬號再回復給用戶,在這個收發過程中,發送方和接收方進行了調換(ToUserName和FromUserName值互換),收發都是以xml格式在后台進行傳輸的,

所以掌握各種消息類型的接收回復就是進行微信公眾平台開發的基礎

下面對前面所述的各種消息類型講解其XML數據包的格式。

 

各種收發消息的XML數據包分析

接收消息

1. 文本(包括表情)
接收文本及表情

文字后台格式:

<xml>
 <ToUserName><![CDATA[gh_680bdefc8c5d]]></ToUserName>
 <FromUserName><![CDATA[oIDrpjqASyTPnxRmpS9O_ruZGsfk]]></FromUserName>
 <CreateTime>1359028446</CreateTime>
 <MsgType><![CDATA[text]]></MsgType>
 <Content><![CDATA[測試文字]]></Content>
 <MsgId>5836982729904121631</MsgId>
</xml>

表情后台格式

<xml><ToUserName><![CDATA[gh_680bdefc8c5d]]></ToUserName>
<FromUserName><![CDATA[oIDrpjqASyTPnxRmpS9O_ruZGsfk]]></FromUserName>
<CreateTime>1359044526</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[/::)/::~/::B/::|/:8-)]]></Content>
<MsgId>5837051792978241864</MsgId>
</xml>

XML格式講解

ToUserName 消息接收方微信號,一般為公眾平台賬號微信號
FromUserName 消息發送方微信號
CreateTime 消息創建時間
MsgType 消息類型;文本消息為text
Content 消息內容
MsgId 消息ID號

可以看出,文本和表情的消息類型均為文本

2. 圖片
接收圖片

后台格式:

<xml><ToUserName><![CDATA[gh_680bdefc8c5d]]></ToUserName>
<FromUserName><![CDATA[oIDrpjqASyTPnxRmpS9O_ruZGsfk]]></FromUserName>
<CreateTime>1359028479</CreateTime>
<MsgType><![CDATA[image]]></MsgType>
<PicUrl><![CDATA[http://mmbiz.qpic.cn/mmbiz/L4qjYtOibummHn90t1mnaibYiaR8ljyicF3MW7XX3BLp1qZgUb7CtZ0DxqYFI4uAQH1FWs3hUicpibjF0pOqLEQyDMlg/0]]></PicUrl>
<MsgId>5836982871638042400</MsgId>
<MediaId><![CDATA[PGKsO3LAgbVTsFYO7FGu51KUYa07D0C_Nozz2fn1z6VYtHOsF59PTFl0vagGxkVH]]></MediaId>
</xml>

XML格式講解

ToUserName 消息接收方微信號,一般為公眾平台賬號微信號
FromUserName 消息發送方微信號
CreateTime 消息創建時間
MsgType 消息類型;圖片消息為image
PicUrl 圖片鏈接地址,可以用HTTP GET獲取
MsgId 消息ID號

3. 語音
接收語音

后台格式:

<xml>
    <ToUserName><![CDATA[gh_d035bb259cf5]]></ToUserName>
    <FromUserName><![CDATA[owEUGj4BW8yeWRvyEERiVGKwAF1Q]]></FromUserName>
    <CreateTime>1364883809</CreateTime>
    <MsgType><![CDATA[voice]]></MsgType>
    <MediaId><![CDATA[JfmCezZ3Cwp0FwUvMADwwhvp-XScuvpictubpw0c6ALyA8tj3HLU4PoXzMpIY72P]]></MediaId>
    <Format><![CDATA[amr]]></Format>
    <MsgId>5862131322594912688</MsgId>
</xml>

XML格式講解

ToUserName 消息接收方微信號,一般為公眾平台賬號微信號
FromUserName 消息發送方微信號
CreateTime 消息創建時間
MsgType 消息類型;語音消息為voice
MediaId 媒體ID
Format 語音格式,這里為amr
MsgId 消息ID號
附:AMR接口簡介
全稱Adaptive Multi-Rate,主要用於移動設備的音頻,壓縮比比較大,但相對其他的壓縮格式質量比較差,由於多用於人聲,通話,效果還是很不錯的。

4. 視頻

接收視頻

后台格式:

xml><ToUserName><![CDATA[gh_680bdefc8c5d]]></ToUserName>
<FromUserName><![CDATA[oIDrpjqASyTPnxRmpS9O_ruZGsfk]]></FromUserName>
<CreateTime>1359028186</CreateTime>
<MsgType><![CDATA[video]]></MsgType>
<MediaId><![CDATA[DBVFRIj29LB2hxuYpc0R6VLyxwgyCHZPbRj_IIs6YaGhutyXUKtFSDcSCPeoqUYr]]></MediaId>
<ThumbMediaId><![CDATA[mxUJ5gcCeesJwx2T9qsk62YzIclCP_HnRdfTQcojlPeT2G9Q3d22UkSLyBFLZ01J]]></ThumbMediaId>
<MsgId>5836981613212624665</MsgId>
</xml>

XML格式講解

ToUserName 消息接收方微信號,一般為公眾平台賬號微信號
FromUserName 消息發送方微信號
CreateTime 消息創建時間
MsgType 消息類型;視頻消息為video
MediaId 媒體ID
ThumbMediaId 媒體縮略ID?
MsgId 消息ID號

5. 位置

接收位置

后台格式:

<xml>
<ToUserName><![CDATA[gh_680bdefc8c5d]]></ToUserName>
<FromUserName><![CDATA[oIDrpjqASyTPnxRmpS9O_ruZGsfk]]></FromUserName>
<CreateTime>1359036619</CreateTime>
<MsgType><![CDATA[location]]></MsgType>
<Location_X>22.539968</Location_X>
<Location_Y>113.954980</Location_Y>
<Scale>16</Scale>
<Label><![CDATA[中國廣東省深圳市南山區華僑城深南大道9789號 郵政編碼: 518057]]></Label>
<MsgId>5837017832671832047</MsgId>
</xml>

XML格式講解

 ToUserName 消息接收方微信號,一般為公眾平台賬號微信號
 FromUserName 消息發送方微信號
 CreateTime 消息創建時間
 MsgType 消息類型,地理位置為location
 Location_X 地理位置緯度
 Location_Y 地理位置經度
 Scale 地圖縮放大小
 Label 地理位置信息
 MsgId 消息ID號

6. 鏈接

接收鏈接

后台格式:

<xml>
<ToUserName><![CDATA[gh_680bdefc8c5d]]></ToUserName> 
<FromUserName><![CDATA[oIDrpjl2LYdfTAM-oxDgB4XZcnc8]]></FromUserName> 
<CreateTime>1359709372</CreateTime> 
<MsgType><![CDATA[link]]></MsgType> 
<Title><![CDATA[微信公眾平台開發者的江湖]]></Title> 
<Description><![CDATA[陳坤的微信公眾號這段時間大火,大家..]]></Description> 
<Url><![CDATA[http://israel.duapp.com/web/photo.php]]></Url> 
<MsgId>5839907284805129867</MsgId> 
</xml> 

XML格式講解

 ToUserName 消息接收方微信號,一般為公眾平台賬號微信號
 FromUserName 消息發送方微信號
 CreateTime 消息創建時間
 MsgType 消息類型,鏈接為link
 Title 圖文消息標題
 Description 圖文消息描述
 Url 點擊圖文消息跳轉鏈接
 MsgId 消息ID號

 

回復消息

只介紹三種格式的消息:文本、圖文、音樂。其中圖文消息包括單條圖文消息和多條圖文消息,展示方式有一點點不同。

1. 文本消息格式
回復文本

后台格式:

<xml>
<ToUserName><![CDATA[oIDrpjqASyTPnxRmpS9O_ruZGsfk]]></ToUserName>
<FromUserName><![CDATA[gh_680bdefc8c5d]]></FromUserName>
<CreateTime>1359036631</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[【深圳】天氣實況 溫度:27℃ 濕度:59% 風速:東北風3級
11月03日 周日 27℃~23℃ 小雨 東北風4-5級
11月04日 周一 26℃~21℃ 陣雨 微風
11月05日 周二 27℃~22℃ 陰 微風]]></Content>
<FuncFlag>0</FuncFlag>
</xml>

XML格式講解

 FromUserName 消息發送方
 ToUserName 消息接收方
 CreateTime 消息創建時間
 MsgType 消息類型,文本消息必須填寫text
 Content 消息內容,大小限制在2048字節,字段為空為不合法請求
 FuncFlag 星標字段

 
2. 圖文消息格式
2.1 單條圖文消息
回復單條圖文


后台格式:

<xml>
    <ToUserName><![CDATA[oIDrpjqASyTPnxRmpS9O_ruZGsfk]]></ToUserName>
    <FromUserName><![CDATA[gh_680bdefc8c5d]]></FromUserName>
    <CreateTime>1359011899</CreateTime>
    <MsgType><![CDATA[news]]></MsgType>
    <Content><![CDATA[]]></Content>
    <ArticleCount>1</ArticleCount>
    <Articles>
        <item>
            <Title><![CDATA[[蘋果產品信息查詢]]></Title>
            <Description><![CDATA[序列號:USE IMEI NUMBER
IMEI號:358031058974471
設備名稱:iPhone 5C
設備顏色:
設備容量:
激活狀態:已激活
電話支持:未過期[2014-01-13]
硬件保修:未過期[2014-10-14]
生產工廠:中國]]>
    </Description>
            <PicUrl><![CDATA[http://www.fangbei.org/weixin/weather/icon/banner.jpg]]></PicUrl>
            <Url><![CDATA[]]></Url>
        </item>
    </Articles>
    <FuncFlag>0</FuncFlag>
</xml>

2.2 多圖文消息

回復多圖文

后台數據格式

<xml>
    <ToUserName><![CDATA[oIDrpjqASyTPnxRmpS9O_ruZGsfk]]></ToUserName>
    <FromUserName><![CDATA[gh_680bdefc8c5d]]></FromUserName>
    <CreateTime>1359011829</CreateTime>
    <MsgType><![CDATA[news]]></MsgType>
    <Content><![CDATA[]]></Content>
    <ArticleCount>5</ArticleCount>
    <Articles>
        <item>
            <Title><![CDATA[【深圳】天氣實況 溫度:3℃ 濕度:43﹪ 風速:西南風2級]]></Title>
            <Description><![CDATA[]]></Description>
<PicUrl><![CDATA[http://www.fangbei.org/weixin/weather/icon/banner.jpg]]></PicUrl>
            <Url><![CDATA[]]></Url>
        </item>
        <item>
            <Title><![CDATA[06月24日 周四 2℃~-7℃ 晴 北風3-4級轉東南風小於3級]]></Title>
            <Description><![CDATA[]]></Description>
            <PicUrl><![CDATA[http://www.fangbei.org/weixin/weather/icon/d00.gif]]></PicUrl>
            <Url><![CDATA[]]></Url>
        </item>
        <item>
            <Title><![CDATA[06月25日 周五 -1℃~-8℃ 晴 東南風小於3級轉東北風3-4級]]></Title>
            <Description><![CDATA[]]></Description>
    <PicUrl><![CDATA[http://www.fangbei.org/weixin/weather/icon/d00.gif]]></PicUrl>
            <Url><![CDATA[]]></Url>
        </item>
        <item>
            <Title><![CDATA[06月26日 周六 -1℃~-7℃ 多雲 東北風3-4級轉東南風小於3級]]></Title>
            <Description><![CDATA[]]></Description>
<PicUrl><![CDATA[http://www.fangbei.org/weixin/weather/icon/d01.gif]]></PicUrl>
            <Url><![CDATA[]]></Url>
        </item>
        <item>
            <Title><![CDATA[06月27日 周日 0℃~-6℃ 多雲 東南風小於3級轉東北風3-4級]]></Title>
            <Description><![CDATA[]]></Description>
<PicUrl><![CDATA[http://www.fangbei.org/weixin/weather/icon/d01.gif]]></PicUrl>
            <Url><![CDATA[]]></Url>
        </item>
    </Articles>
    <FuncFlag>0</FuncFlag>
</xml>

XML格式講解

FromUserName 消息發送方
 ToUserName 消息接收方
 CreateTime 消息創建時間
 MsgType 消息類型,圖文消息必須填寫news
 Content 消息內容,圖文消息可填空
 ArticleCount 圖文消息個數,限制為10條以內
 Articles 多條圖文消息信息,默認第一個item為大圖
  Title 圖文消息標題
  Description 圖文消息描述
  PicUrl 圖片鏈接,支持JPG、PNG格式,較好的效果為大圖640*320,小圖80*80
  Url 點擊圖文消息跳轉鏈接
FuncFlag 星標字段

 3. 音樂消息

回復音樂消息

后台格式:

<xml>
    <ToUserName><![CDATA[ollB4jqgdO_cRnVXk_wRnSywgtQ8]]></ToUserName>
    <FromUserName><![CDATA[gh_b629c48b653e]]></FromUserName>
    <CreateTime>1372310544</CreateTime>
    <MsgType><![CDATA[music]]></MsgType>
    <Music>
        <Title><![CDATA[最炫民族風]]></Title>
        <Description><![CDATA[鳳凰傳奇]]></Description>
        <MusicUrl><![CDATA[http://zj189.cn/zj/download/music/zxmzf.mp3]]></MusicUrl>
        <HQMusicUrl><![CDATA[http://zj189.cn/zj/download/music/zxmzf.mp3]]></HQMusicUrl>
    </Music>
    <FuncFlag>0</FuncFlag>
</xml>

XML格式講解

ToUserName     接收方帳號(收到的OpenID)
FromUserName     開發者微信號
CreateTime     消息創建時間
MsgType          消息類型,此處為music
    Title       音樂標題
    Description 音樂描述
    MusicUrl     音樂鏈接
    HQMusicUrl     高質量音樂鏈接,WIFI環境優先使用該鏈接播放音樂
FuncFlag     位0x0001被標志時,星標剛收到的消息。

 

事件消息類型

目前用戶在關注和取消關注,以及點擊菜單的時候會自動向公眾平台發送事件推送消息:

1. 關注事件

<xml>
    <ToUserName><![CDATA[gh_b629c48b653e]]></ToUserName>
    <FromUserName><![CDATA[ollB4jv7LA3tydjviJp5V9qTU_kA]]></FromUserName>
    <CreateTime>1372307736</CreateTime>
    <MsgType><![CDATA[event]]></MsgType>
    <Event><![CDATA[subscribe]]></Event>
    <EventKey><![CDATA[]]></EventKey>
</xml>

2. 取消關注事件

<xml>
    <ToUserName><![CDATA[gh_b629c48b653e]]></ToUserName>
    <FromUserName><![CDATA[ollB4jqgdO_cRnVXk_wRnSywgtQ8]]></FromUserName>
    <CreateTime>1372309890</CreateTime>
    <MsgType><![CDATA[event]]></MsgType>
    <Event><![CDATA[unsubscribe]]></Event>
    <EventKey><![CDATA[]]></EventKey>
</xml>

3. 菜單點擊事件

<xml>
    <ToUserName><![CDATA[gh_680bdefc8c5d]]></ToUserName>
    <FromUserName><![CDATA[oIDrpjqASyTPnxRmpS9O_ruZGsfk]]></FromUserName>
    <CreateTime>1377886191</CreateTime>
    <MsgType><![CDATA[event]]></MsgType>
    <Event><![CDATA[CLICK]]></Event>
    <EventKey><![CDATA[天氣深圳]]></EventKey>
</xml>

XML格式講解

ToUserName     接收方微信號
FromUserName 發送方微信號,若為普通用戶,則是一個OpenID
CreateTime     消息創建時間
MsgType     消息類型,event
Event     事件類型,subscribe(訂閱)、unsubscribe(取消訂閱)、CLICK(自定義菜單點擊事件)
EventKey 事件KEY值,與自定義菜單接口中KEY值對應

 

 

第五章 小結

 

總的來說,通過本教程,你得到了以下收獲:

  • 1. 通過本教程得到了一個新浪雲應用,該應用以后將會收取少量費用。你也可以另外自行購買空間服務器。
  • 2. 成功啟用了開發模式,並且實現了時間的自動回復。
  • 3. 體驗了微信公眾賬號最常用的接收消息及發送消息類型
  • 4. 了解了微信公眾平台開發的原理,並且熟悉了各種消息及發送是怎么一回事

接下來該做什么呢?你可以購買我們的微信公眾平台開發電子版圖書書中包括了微信開發幾乎所有的接口講解,包括基礎消息原理、自定義菜單、用戶信息、網頁授權和微信WeUI、參數二維碼、客服接口與群發接口、微信小店、微信JS SDK、微信門店、微信卡券和會員卡、微信支付與微信紅包、微信連Wi-Fi、微信搖一搖、微信企業號、微信小程序、微信開放平台以及微信開發實用技巧等所有知識等。

這一本書就可以解決你在微信開發過程中遇到的90%的問題。電子書提供代碼下載,並且持續更新。

價格僅30元,為紙質書價格的 3折 ,地址為 https://www.kancloud.cn/fangbei/weixin 。

 

捐贈我們
方倍工作室一直在致力於幫助開發人員更加快速方便的進行微信公眾平台的開發,如果您對我們的成果表示認同並且覺得對你有所幫助,歡迎您對我們捐贈^_^。

 

 

 本文於2016年3月10日 閱讀量 突破100萬!

 原文:http://www.cnblogs.com/txw1958/p/wechat-tutorial.html 

 


免責聲明!

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



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