微信服務器之三次數據傳遞,排重的問題

問題來源:http://www.zhihu.com/question/22685171

當我們在做微信公衆號開發的時候,微信官方有個蛋疼的東西就是


情景假設:

我們發送消息給微信,微信發送消息給我們的服務器,服務器處理,但是這個處理時間很長,那麼微信在5秒內收不到響應會斷掉連接,並且重新發起請求,總共重試三次

其實這樣有個好處,就是假設出現網絡丟包現象,微信這個方式就能很好的處理這個問題,但是這樣也加大了我們開發者的工作任務

----------------------以下方法僅適合服務號和企業號,因爲普通訂閱號不支持(主動發送消息的)高級接口----------------------

方法其實和Aloong說的一樣,其實就是先回復一個空白的數據,微信會認爲服務器接收到這個這次數據,所以不會再進行消息傳遞

回覆完成之後然後調用微信的高級接口,回覆一個自定義數據即可

高級接口貌似只能服務號和企業號使用

需要注意的是response.getWriter()的結果需要及時的關閉,關閉之後再進行耗時操作纔是真正的反饋回去了,不然這個(空白)消息是沒有反饋回去的

大致流程:

1.取得writer()

2.取得request中的數據放入map中--

3.關閉writer

4.使用map中的數據,進行耗時操作

5.通過高級接口發送數據


李一峯的回覆說的也是對的,我正在想怎麼按照他的方法搞一搞,這樣就不必使用高級接口了

解決方案:http://blog.csdn.net/langren1353464539/article/details/49898067

朋友的小站推廣:http://ntaow.com/bimai.jsp

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章