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

首頁 微信小程式 微信開發(fā) 微信公眾平臺開發(fā):請求訊息去重

微信公眾平臺開發(fā):請求訊息去重

Feb 27, 2017 pm 01:34 PM

  為了確保信息請求消息的到達率,微信服務器在沒有及時收到響應消息(ResponseMessage)的情況下,會多次發(fā)送同一條請求消息(RequestMessage),包括MsgId等在內的所有文本內容都是一致的。

  這種機制確保了在諸如網絡狀況不佳的情況下消息的回復成功率,但是有時候由于服務器負荷、本身請求過程就需要好幾秒才能完成等情況,多次重復的消息反而成了服務器的負擔,甚至對業(yè)務和數(shù)據(jù)也可能造成影響。

  針對這種情況,SDK增加了去重的設置,只需要在使用MessageHandler的時候加一句話即可:

messageHandler.OmitRepeatedMessage = true;//啟用消息去重功能
/// <summary>
 /// 最簡化的處理流程(不加密)
 /// </summary>
 [HttpPost]
 [ActionName("MiniPost")]
 public ActionResult MiniPost(string signature, string timestamp, string nonce, string echostr)
 {
     if (!CheckSignature.Check(signature, timestamp, nonce, Token))
     {
         return new WeixinResult("參數(shù)錯誤!");//v0.8+
     }
 
     var messageHandler = new CustomMessageHandler(Request.InputStream, null, 10);
 
     messageHandler.OmitRepeatedMessage = true;//啟用消息去重功能
 
     messageHandler.Execute();//執(zhí)行微信處理過程
 
     return new FixWeixinBugWeixinResult(messageHandler);
 }

  去重的原理是通過當前用戶的上下文,判斷當前請求消息和上一條請求消息的MsgId是否一致,如果一直的話則終止向下執(zhí)行。

文件:Senparc.Weixin.MessageHandlers.MessageHandler.cs

public virtual void OnExecuting()
{
    if (OmitRepeatedMessage && CurrentMessageContext.RequestMessages.Count > 1)
    {
        var lastMessage = CurrentMessageContext.RequestMessages[CurrentMessageContext.RequestMessages.Count - 2];
        if (lastMessage.MsgId != 0 && lastMessage.MsgId == RequestMessage.MsgId)
        {
            CancelExcute = true;//重復消息,取消執(zhí)行
        }
    }
}


更多微信公眾平臺開發(fā):請求消息去重相關文章請關注PHP中文網!


本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發(fā)現(xiàn)涉嫌抄襲或侵權的內容,請聯(lián)絡admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Laravel 教程
1601
29
PHP教程
1502
276