大家幫幫忙~困擾了3天,"該公眾號暫時無法提供服務,請稍后再試"的問題


使用微信公眾平台接口調試工具是成功的,返回:
<xml>
    <ToUserName>
        <![CDATA[222]]>
    </ToUserName>
    <FromUserName>
        <![CDATA[111]]>
    </FromUserName>
    <CreateTime>1435154106</CreateTime>
    <MsgType>
        <![CDATA[text]]>
    </MsgType>
    <Content>
        <![CDATA[您說的,可惜,我沒明白啊,試試其他關鍵字吧。]]>
    </Content>
</xml>
但是通過手機的微信APP,始終就是提示“該公眾號暫時無法提供服務,請稍后再試”。我通過在后台處理程序中加日志跟蹤,發現通過微信APP請求,根本沒有到后台處理程序,感覺就像微信服務器沒有中轉直接就出錯了。
朋友們幫忙解決一下,萬分感謝。已經3天了,沒找到原因。

38 个解决方案

#1


微信這玩意到處是坑,做做簡單應用就行了,復雜的還得是app來

#2


可能微信后台參數配置有問題  建議檢查一下配置

#3


引用 2 樓 lkhuge 的回復:
可能微信后台參數配置有問題  建議檢查一下配置


接口涉及到的參數應該都沒有問題,不清楚你說的參數配置指哪些,麻煩指明一下,謝謝了。

#4


引用 3 樓 godblessyU 的回復:
Quote: 引用 2 樓 lkhuge 的回復:

可能微信后台參數配置有問題  建議檢查一下配置


接口涉及到的參數應該都沒有問題,不清楚你說的參數配置指哪些,麻煩指明一下,謝謝了。


如果沒有發送到你的服務器 你可以檢查一下
1.你的url是否被拉到黑名單了
2.必須是域名 80端口

#5


引用 4 樓 lkhuge 的回復:
Quote: 引用 3 樓 godblessyU 的回復:

Quote: 引用 2 樓 lkhuge 的回復:

可能微信后台參數配置有問題  建議檢查一下配置


接口涉及到的參數應該都沒有問題,不清楚你說的參數配置指哪些,麻煩指明一下,謝謝了。


如果沒有發送到你的服務器 你可以檢查一下
1.你的url是否被拉到黑名單了
2.必須是域名 80端口

#6


微信公眾號沒有真正跑起來。例如域名配置不正確,服務器未啟動,測試號的配置文件屬性不正確都會出現這種情況

#7


你的服務器必須用的外網地址,如果你自己機器的服務器那么必須用pagekite 這類工具把你的80端口服務地址映射到外網去,當然這個映射是借助第三方域名提供商,並且是沒有ICP備案的,不過我就是用這種方式直接連到本機tomcat調試的。樓主最簡單的方法是把你服務地址放到瀏覽器上看看能不能訪問。

#8


這種情況也有可能是因為代碼沒有保存為UTF-8編碼導致的。

#9


引用 2 樓 lkhuge 的回復:
可能微信后台參數配置有問題  建議檢查一下配置


應該是你的微信環境出錯了,請仔細檢查一下。

#10


樓主,問題解決了沒有

#11


你這個是自動回復嗎,如果是自動回復的話
1.你的服務器收到微信發來的內容了嗎
2.回復的時候是不是格式錯了
3.回復的時候是不是沒有在規定的5秒內
4.回復的時候是否需要加密(開放平台是必須加密,公眾平台的話看你后台怎么配的)

#12


牛人處處有,學習了。

#13


請問超過5秒的話怎么解決這個問題呢,我看人家說可以發送空字符串怎么發送呢,我試過確實加文字發送過去不會出現這個問題,可是我不想發送文字過去但是用 setContent=""又不行

#14


引用 11 樓 u012628469 的回復:
你這個是自動回復嗎,如果是自動回復的話
1.你的服務器收到微信發來的內容了嗎
2.回復的時候是不是格式錯了
3.回復的時候是不是沒有在規定的5秒內
4.回復的時候是否需要加密(開放平台是必須加密,公眾平台的話看你后台怎么配的)

#15


這個是代碼寫的有問題,所以才無法提供服務。

#16


引用 15 樓 zy205817 的回復:
這個是代碼寫的有問題,所以才無法提供服務。


絕對100%是你自己代碼流程出問題了 

#17


樓主解決了嗎。遇到同樣問題。求后文。。。

#18


樓主解決了嗎,同求解決方法,已經折磨我兩天了……

#19


我的問題解決了,我用的php,是把數組轉換成XML的時候出的問題,把php.ini文件里的always_populate_raw_post_data參數啟用並設置為-1就好了,希望能幫到大家。

#20


樓主趕快結貼,樓主微武。

#21


我也遇到了這樣的問題,開始也是到處找錯誤,都沒發現
后來經人提醒,我把開發者模式關了,然后就自帶的關鍵字回復,發現還是不行.
我想應該是候企鵝的問題吧

#22


問題解決了嗎 我也是一樣 

#23


手機上發給公眾平台的XML
<xml><ToUserName><![CDATA[gh_cdddbf331b75]]></ToUserName>
<FromUserName><![CDATA[oW-JRtwbfv2qVV6pqIVd6YmEA-HU]]></FromUserName>
<CreateTime>1457061563</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[呃呃呃]]></Content>
<MsgId>6258031761745732436</MsgId>
</xml>

服務器返回給公眾平台的xml
<xml><ToUserName><![CDATA[{oW-JRtwbfv2qVV6pqIVd6YmEA-HU}]]></ToUserName><FromUserName><![CDATA[{gh_cdddbf331b75}]]></FromUserName><CreateTime>{635926871633683965}</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[{呃呃呃}]]></Content></xml>

有什么問題嗎
手機上用就是報 暫時無法提供服務

#24


我也是啊
收到消息
<xml><ToUserName><![CDATA[gh_5c92a8460000]]></ToUserName>
<FromUserName><![CDATA[o3_JltwHcjhmZ2Ob7bBjAJia0000]]></FromUserName>
<CreateTime>1460102711</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[抽獎]]></Content>
<MsgId>6271093392951697756</MsgId>
返回消息
<xml><ToUserName>o3_JltwHcjhmZ2Ob7bBjAJia0000</ToUserName><FromUserName>gh_5c92a8460000</FromUserName><CreateTime>1460102711</CreateTime><MsgType>text</MsgType><Content>今天你已經抽過獎了</Content><Articles></Articles></xml>

以上消息userName后四位被我用0代替的

#25


碰到這個問題的大部分原因是代碼寫的有問題,比如沒有給微信服務器返回數據,微信會一直請求5次,都失敗后給回復這條內容。所以檢查代碼的邏輯很重要

#26


引用 25 樓 demon_peigen 的回復:
碰到這個問題的大部分原因是代碼寫的有問題,比如沒有給微信服務器返回數據,微信會一直請求5次,都失敗后給回復這條內容。所以檢查代碼的邏輯很重要

樓上說的是, 無論如何都要給微信返回點消息.要不他就認為你沒收到他的消息.所以就返回 "該公眾號暫時無法提供服務,請稍后再試"

我用django 處理不好 csrf 問題, 加了@csrf_exempt  重寫View.dispatch 也沒用. 只能改用不加密模式的. 同求解決方法.

#27


該回復於2016-06-07 17:26:48被管理員刪除

#28


確定下 fromuserid 和touserid沒弄反了吧!

#29


我遇到的這個問題是因為調用xstream格式化報文時,沒有把對象的父類屬性格式化出來,后來換了最新版jar包搞定了

#30


引用 28 樓 gang_strong 的回復:
確定下 fromuserid 和touserid沒弄反了吧!




說到關鍵了   很多人都是 把傳過來的值 按名稱直接放進去的

這也算是微信一個小坑吧   其實在填充 實體時 需要將兩個字段 對調的。

#31




我成功了,在MVC里面,方法體是  public ActionResult Index(){}
返回XML結構即可
 return Content(@"<xml>
                            <ToUserName><![CDATA[" + mbr.From_user_name + @"]]></ToUserName>
                            <FromUserName><![CDATA[" + mbr.To_user_name + @"]]></FromUserName>
                            <CreateTime>" + DateTime.Now.Ticks + @"</CreateTime>
                            <MsgType><![CDATA[text]]></MsgType>
                            <Content><![CDATA[您說的,可惜我沒明白啊~試試其他關鍵字吧。]]></Content>
                            </xml>");

確定下 fromuserid 和touserid沒弄反

#32


 用微信測試號,配置成功了,用戶給測試號發送的時候報這個錯,好像是方法都沒有進樣

#33


我也遇到了這個問題,最終發現是第三方授權出現的bug。
建議使用微信的日志記錄  開發--》運維中心   鎖定一下到底是哪個環節有問題。
一般微信推送的消息會發給開發配置的服務器,和有對應權限的第三方授權服務器

出現這個問題的本質就是微信服務器沒有收到對應的響應或響應的格式有誤。如果沒有到  那么肯定會出現三次 錯誤信息,否則就是響應格式有誤。

#34


請問樓主有解決辦法了嗎?我現在遇到的情況和你這個一模一樣

#35


問題已經解決
微信推送到你服務器上的:ToUserName---<![CDATA[gh_e3da2db5c73a]]>//獲取公眾號原始ID
            FromUserName---<![CDATA[oSfASs9eurY6AjWd6ri579kw0Iv4]]>//獲取微信用戶OpenID
然后你返回給微信xml數據:
            <ToUserName>{公眾號原始ID,即你收到的ToUserName}</ToUserName>
            <FromUserName>{微信用戶的OpenID,即收到的FromUserName}</FromUserName>
返回給微信公眾平台的{發送者}和{接收者}數據應該和微信推送到服務器上的{發送者}和{接受者}這兩者的是[相反的]
 
想想是不是,開始用戶是發送者,然后用戶時接收者.

#36


用django 開發遇到同樣的問題,后來發現是url正則配置的時候有'"/",在公眾號屏台上配置的時候沒有寫導致出錯。細節決定成敗啊

#37


引用 28 樓 gang_strong 的回復:
確定下 fromuserid 和touserid沒弄反了吧!

我去,我也遇到這個問題,確實是 fromuserid 和touserid弄反了
!!!好坑啊

#38


我的回答是,如果程序處理回復,直接在那個回復之前 用 exit;試一下,應該就沒有錯誤提示了,然后再一步步找問題

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com