国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Rumah applet WeChat pembangunan WeChat 微信公眾平臺(tái)開(kāi)發(fā):使用Senparc.Weixin.MP SDK

微信公眾平臺(tái)開(kāi)發(fā):使用Senparc.Weixin.MP SDK

Feb 27, 2017 am 11:56 AM
Platform awam WeChat

? ? Senparc.Weixin.MP SDK已經(jīng)涵蓋了微信6.x的所有公共API。

? ? 整個(gè)項(xiàng)目的源代碼以及已經(jīng)編譯好的程序集可以在這個(gè)項(xiàng)目中獲取到:https://github.com/JeffreySu/WeiXinMPSDK

? ?PS:由于微信API以及Senparc.Weixin SDK一直在不斷升級(jí)更新,最新的代碼及Demo以上面的github中的源代碼為準(zhǔn)。

? ? 我們現(xiàn)在從無(wú)到有建立一個(gè)ASP.NET MVC項(xiàng)目,來(lái)看一下如何與微信進(jìn)行對(duì)接(Webforms原理也都是一樣,只不過(guò)把Controller中的Action換成.aspx頁(yè)面就可以了)。

? ? 將要演示的項(xiàng)目源代碼也可以在開(kāi)源項(xiàng)目中找到(因?yàn)樵创a中要兼顧2個(gè)項(xiàng)目,有一個(gè)公用項(xiàng)目,所以與下面展示的結(jié)構(gòu)略有不同,邏輯完全一致):

? ? MVC:https://github.com/JeffreySu/WeiXinMPSDK/tree/master/Senparc.Weixin.MP.Sample

? ? WebForms:https://github.com/JeffreySu/WeiXinMPSDK/tree/master/Senparc.Weixin.MP.Sample.WebForms

?

?

第一步:建立一個(gè)空的ASP.NET MVC(4.0)項(xiàng)目,項(xiàng)目名稱如Senparc.Weixin.MP.Sample

微信公眾平臺(tái)開(kāi)發(fā):使用Senparc.Weixin.MP SDK

?

第二步:建立一個(gè)Controller,如WeixinController.cs

微信公眾平臺(tái)開(kāi)發(fā):使用Senparc.Weixin.MP SDK

?

第三步:引入Senparc.Weixin.MP.dll

? ? 引入相關(guān)dll的方式有兩種:一種是復(fù)制dll到項(xiàng)目某文件夾中,然后直接在項(xiàng)目中添加Senparc.Weixin.MP.dll及Senparc.Weixin.MP.MvcExtension.dll的引用(Senparc.Weixin.MP.MvcExtension.dll只有MVC項(xiàng)目需要,WebForms項(xiàng)目可以忽略),第二種方式我們可以使用Nuget直接安裝到項(xiàng)目中。

? ? Nuget項(xiàng)目地址:https://www.nuget.org/packages/Senparc.Weixin.MP/

? ? 第一種方式已經(jīng)足夠簡(jiǎn)單,這里介紹第二種:打開(kāi)菜單【工具】> 【庫(kù)程序包管理器】 > 【程序包管理器控制臺(tái)】,如下圖:

微信公眾平臺(tái)開(kāi)發(fā):使用Senparc.Weixin.MP SDK

點(diǎn)擊后將會(huì)出現(xiàn)程序包管理器控制臺(tái):

微信公眾平臺(tái)開(kāi)發(fā):使用Senparc.Weixin.MP SDK

? ? 如果是第一次安裝Senparc.Weixin.MP庫(kù),則在PM>后面輸入命令:

Install-Package Senparc.Weixin.MP

? ? 回車(chē),Senparc.Weixin.MP.dll將會(huì)被自動(dòng)引入到項(xiàng)目中。

? ? 如果以后需要更新到最新版本,只需要使用Update-Package命令,將會(huì)自動(dòng)在線更新:

Update-Package Senparc.Weixin.MP

? ? 以上操作對(duì)MVC和WebForms項(xiàng)目都有效。

? ? 如果是MVC項(xiàng)目,為了獲得更多針對(duì)MVC的擴(kuò)展功能,我們可以繼續(xù)引入Senparc.Weixin.MP.MvcExtension.dll:

Install-Package Senparc.Weixin.MP.MVC

命令窗口輸出結(jié)果如下,表示已經(jīng)安裝成功:

微信公眾平臺(tái)開(kāi)發(fā):使用Senparc.Weixin.MP SDK

?

? ? 我們觀察一下項(xiàng)目引用的程序集,這兩個(gè)dll已經(jīng)被引用進(jìn)來(lái)了:

微信公眾平臺(tái)開(kāi)發(fā):使用Senparc.Weixin.MP SDK

?

第四步:修改WeixinController.cs

? ? 我們將下列代碼加入WeixinController.cs:

using System;
using System.IO;
using System.Web.Configuration;
using System.Web.Mvc;
using Senparc.Weixin.MP.Entities.Request;

namespace Senparc.Weixin.MP.Sample.Controllers
{
    using Senparc.Weixin.MP.MvcExtension;
    using Senparc.Weixin.MP.Sample.CommonService.CustomMessageHandler;

    public partial class WeixinController : Controller
    {
        public static readonly string Token = "YourToken";//與微信公眾賬號(hào)后臺(tái)的Token設(shè)置保持一致,區(qū)分大小寫(xiě)。
        public static readonly string EncodingAESKey = "YourKey";//與微信公眾賬號(hào)后臺(tái)的EncodingAESKey設(shè)置保持一致,區(qū)分大小寫(xiě)。
        public static readonly string AppId = "YourAppId";//與微信公眾賬號(hào)后臺(tái)的AppId設(shè)置保持一致,區(qū)分大小寫(xiě)。

        /// <summary>
        /// 微信后臺(tái)驗(yàn)證地址(使用Get),微信后臺(tái)的“接口配置信息”的Url填寫(xiě)如:http://weixin.senparc.com/weixin
        /// </summary>
        [HttpGet]
        [ActionName("Index")]
        public ActionResult Get(PostModel postModel, string echostr)
        {
            if (CheckSignature.Check(postModel.Signature, postModel.Timestamp, postModel.Nonce, Token))
            {
                return Content(echostr); //返回隨機(jī)字符串則表示驗(yàn)證通過(guò)
            }
            else
            {
                return Content("failed:" + postModel.Signature + "," + MP.CheckSignature.GetSignature(postModel.Timestamp, postModel.Nonce, Token) + "。" +
                    "如果你在瀏覽器中看到這句話,說(shuō)明此地址可以被作為微信公眾賬號(hào)后臺(tái)的Url,請(qǐng)注意保持Token一致。");
            }
        }

        /// <summary>
        /// 用戶發(fā)送消息后,微信平臺(tái)自動(dòng)Post一個(gè)請(qǐng)求到這里,并等待響應(yīng)XML。
        /// PS:此方法為簡(jiǎn)化方法,效果與OldPost一致。
        /// v0.8之后的版本可以結(jié)合Senparc.Weixin.MP.MvcExtension擴(kuò)展包,使用WeixinResult,見(jiàn)MiniPost方法。
        /// </summary>
        [HttpPost]
        [ActionName("Index")]
        public ActionResult Post(PostModel postModel)
        {
            if (!CheckSignature.Check(postModel.Signature, postModel.Timestamp, postModel.Nonce, Token))
            {
                return Content("參數(shù)錯(cuò)誤!");
            }

            postModel.Token = Token;//根據(jù)自己后臺(tái)的設(shè)置保持一致
            postModel.EncodingAESKey = EncodingAESKey;//根據(jù)自己后臺(tái)的設(shè)置保持一致
            postModel.AppId = AppId;//根據(jù)自己后臺(tái)的設(shè)置保持一致

            //自定義MessageHandler,對(duì)微信請(qǐng)求的詳細(xì)判斷操作都在這里面。
            var messageHandler = new CustomMessageHandler(Request.InputStream, postModel);//接收消息

            messageHandler.Execute();//執(zhí)行微信處理過(guò)程

            return new FixWeixinBugWeixinResult(messageHandler);//返回結(jié)果

        }
    }
}

? ? 第一個(gè)Get對(duì)應(yīng)微信后臺(tái)設(shè)置URL時(shí)候的請(qǐng)求,第二個(gè)Post用于接受么次轉(zhuǎn)發(fā)過(guò)來(lái)的客戶請(qǐng)求。

? ? 其中CustomMessageHandler是我們自己創(chuàng)建的一個(gè)類(lèi),用于實(shí)現(xiàn)MessageHandler(有關(guān)MessageHandler的詳細(xì)介紹可以看《Senparc.Weixin.MP SDK?微信公眾平臺(tái)開(kāi)發(fā)教程(六):了解MessageHandler》,也可以看這里),所有處理微信消息的核心邏輯都被包含到CustomMessageHandler中執(zhí)行。除了承擔(dān)處理微信響應(yīng)的任務(wù),MessageHandler還實(shí)現(xiàn)了處理單個(gè)用戶對(duì)話上下文等功能,非常方便。

?

? ? 至此,整個(gè)Senparc.Weixin.MP SDK已經(jīng)基本開(kāi)發(fā)完畢,可以直接發(fā)布,并在微信后臺(tái)使用“高級(jí)功能”對(duì)接了。

? ? 例如上述代碼,Url填寫(xiě)http://xxx/Weixin,Token填寫(xiě)weixin

更多微信公眾平臺(tái)開(kāi)發(fā):使用Senparc.Weixin.MP SDK?相關(guān)文章請(qǐng)關(guān)注PHP中文網(wǎng)!

?


Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial PHP
1502
276