WeiXinUrl: класс и метод обработки запросов
//Авторские контактные данные:
//email:loogn_0707@126.com
//QQ группа: 153725186
//Алипэй: loogn2012@gmail.com (открытый исходный код, приветствуется спонсорская поддержка~)
Интерфейс для работы с публичным аккаунтом WeChat
public class WeiXinUrl : IHttpHandler { static string token = "token"; static string AppId = "AppId"; static string AppSecret = "AppSecret";
public void ProcessRequest(HttpContext context) {
context.Response.ContentType = "text/plain";
var signature = context.Request["signature"] ?? string.Empty;
var timestamp = context.Request["timestamp"] ?? string.Empty;
var nonce = context.Request["nonce"] ?? string.Empty;
//var echostr = context.Request.QueryString["echostr"] ?? string.Empty;
if (WeiXin.CheckSignature(signature, timestamp, nonce, token)) {
//context.Response.Write(echostr);
var replyMsg = WeiXin.ReplyMsg().GetXML();
context.Response.Write(replyMsg);
} else {
context.Response.Write("fuck you");
}
}
static WeiXinUrl() {
WeiXin.ConfigGlobalCredential(AppId, AppSecret);
//Сообщения уведомлений о событиях
WeiXin.OnReceiveMsgEvent += new WeiXin.ReceiveMsg(WeiXin_OnReceiveMsgEvent);
WeiXin.RegisterMsgHandler<RecTextMsg>(msg => {
return new ReplyTextMsg { Content = "Вы сказали:" + msg.Content };
});
WeiXin.RegisterEventHandler<EventAttendMsg>(msg => {
return new ReplyTextMsg { Content = "Спасибо за подписку!" };
});
}
//Обработка событий сообщений
static void WeiXin_OnReceiveMsgEvent(string xml, Dictionary<string, string> dict) {
if (dict.ContainsKey("Event")) {
} else if (dict.ContainsKey("MsgId")) {
}
}
public bool IsReusable {
get {
return false;
}
}
}
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )