講講百度地圖API遇到的坑,石錘百度官方代碼的錯,解決SN校驗失敗


這兩天在做一個項目,用到了百度地圖API,根據坐標獲取具體位置,總結一下遇到的幾個坑

本文基於最新的V3接口,網上好多要么是V2,要么根據地址獲取坐標,本文是唯一一個最新的3,根據坐標獲取位置的完整說明。保證可用。

坑一:官方demo錯誤,md5計算結果不正確

 

比如sn計算值MD5為

MD5: 2D-3E-DF-8D-21-07-4E-70-74-33-5A-23-F5-3D-59-76

 

看到第六個字節07了嗎,官方輸出為 2d3edf8d2174e7074335a23f53d5976

那個7應該是07,正確的應該是          2d3edf8d21074e7074335a23f53d5976

 

坑二:坐標中的,要進行轉義處理,其他的不能轉義處理

錯誤的請求方式

http://api.map.baidu.com/reverse_geocoding/v3?location=34.82105,113.655565&coordtype=wgs84ll&output=xml

正確的請求方式:

http://api.map.baidu.com/reverse_geocoding/v3?location=34.82105%2C113.655565&coordtype=wgs84ll&output=xml

這一塊內容花費了我好長時間才解決。

同時也讓我證實了,百度的校驗機制是先校驗SN,然后再校驗參數是否正確。

如果把坐標中的,去掉,在sn正確的情況下會提示坐標參數不正確。

所以如果坐標沒有逗號,還是報sn錯誤,那就真的是sn錯誤。

坑二可能有些人會說官方哪里哪里寫的很清楚啊,等等,我只能說還是不夠人性化,不能做到開箱即用,體驗非常不好,差一點我就轉用高德了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM