什麼是Ping服務
ping是基於XML_RPC標準協議的更新通告服務,用於部落格把內容更新快速通知給百度,以便百度及時進行抓取和更新。
Ping服務使用方法
你可以採取手動通知和自動通知兩種方式使用ping服務:
手動ping:訪問http://ping.baidu.com/ping.html頁面,在輸入框中輸入部落格地址或者feed地址,點擊“提交部落格”按鈕即可。
自動ping:如果您的部落格程式支援自動ping功能,您只需把百度的Ping服務地址配置到你的Blog發布後台或者用戶端程式中,就可以實現自動通知的功能。百度ping服務的地址為:http://ping.baidu.com/ping/RPC2
自動Ping的XML_RPC
發送給百度Ping服務的XML-RPC客戶請求需要包含如下元素:
RPC端點: http://ping.baidu.com/ping/RPC2
調用方法名: weblogUpdates.extendedPing
參數: (應按照如下所列的相同順序傳送)
部落格名稱
部落格首頁地址
新發文章地址
部落格rss地址
Ping請求包的例子
weblogUpdates.extendedPing xml-rpc請求舉例:
POST /ping/RPC2 HTTP/1.0User-Agent: requestHost: ping.baidu.comContent-Type: text/xmlContent-Length: 511<?xml version="1.0" encoding="UTF-8"?><methodCall> <methodName>weblogUpdates.extendedPing</methodName> <params> <param> <value><string>百度的空間</string></value> </param> <param> <value><string>http://hi.baidu.com/baidu/</string></value> </param> <param> <value><string>http://baidu.com/blog/example.html</string></value> </param> <param> <value><string>http://hi.baidu.com/baidu/rss</string></value> </param> </params></methodCall>
ping-service響應舉例:
ping-service對非POST方法請求返回HTTP_METHOD_NOT_ALLOWED(405)錯誤碼
對超大錯誤包返回HTTP_REQUEST_ENTITY_TOO_LARGE(413)錯誤碼
對非“text/xml”請求包返回HTTP_UNSUPPORTED_MEDIA_TYPE(415)錯誤碼
其他情況返回HTTP_OK(200)代碼
xml-rpc響應http包體為一個xml文檔,含有一個int值,0表示推送成功,其他值表示推送失敗,目前只有0和1。
推送成功時的伺服器響應包為:
HTTP/1.1 200 OKDate: Mon, 11 May 2009 11:54:53 GMTContent-Length: 156Connection: closeContent-Type: text/xml<?xml version="1.0" encoding="UTF-8"?><methodResponse> <params> <param> <value> <int>0</int> </value> </param> </params></methodResponse>
推送失敗時的伺服器響應包為:
HTTP/1.1 200 OKDate: Mon, 11 May 2009 11:54:53 GMTContent-Length: 156Connection: closeContent-Type: text/xml<?xml version="1.0" encoding="UTF-8"?><methodResponse> <params> <param> <value> <int>1</int> </value> </param> </params></methodResponse>