這幾天准備弄一個微信公眾號,在進行服務器配置的時候出現總是出現token驗證失敗的報錯。
實際上,這個問題很好解決。既然微信平台沒有給我們很明確的報錯提示,那么我們就可以通過跟蹤獲取到的請求參數進行分析進行調試。
注意點:
1 作為微信公眾號的入口地址調用的類的方法,
在protected void doGet(HttpServletRequest req, HttpServletResponse resp)方法中
在這里 千萬注意不能調用父類的 的doGet(req,resp)方法,
否則會報錯,400的錯誤
HTTP Status 400 - HTTP method GET is not supported by this URL,
如果這里報錯了,那肯定沒法通過微信token的驗證。
2 如果已經排除了上面的問題,那么就把微信平台發送的帶參請求直接復制出來直接在瀏覽器中進行訪問,
比如我的微信服務器地址:http://wyl.ittun.com/Mytag/wechat.do,token每個人的不一樣,
其中一個請求的參數是:signature=34194a460ab5a333501a68a3f26ad7f2fcdd4d57&echostr=495757996165418935×tamp=1476366102&nonce=1212609150
那么完整的請求地址就是:
http://wyl.ittun.com/Mytag/wechat.do?signature=34194a460ab5a333501a68a3f26ad7f2fcdd4d57&echostr=495757996165418935×tamp=1476366102&nonce=1212609150
,通過這種方式進行訪問,然后對自己的servlet進行調試看到底哪里出了問題,如果訪問了之后再頁面上寫了echostr的值,也就是如果寫了495757996165418935,那么基本上就可以確定你的配置已經成功了。
我的截圖:
分割線-----------------------