2011-10-21 39 views
1

我有一個Google Search Appliance,正試圖訪問該API來下載事件日誌。我在Windows 7命令行上通過cygwin使用curl。如何訪問GSA API

我能夠得到使用

curl -X POST -d Email=username -d Passwd=password "http://ip.ad.dr.ess:8443/accounts/ClientLogin" 

我的問題驗證令牌是,當我試圖檢索甚至日誌本身:

curl -k -X GET -d query=User -H "Content-type: application/atom+xml" -H "Authorization: GoogleLogin Auth=e73265ce254f7c4afbcbee1743a56e81" "http://10.29.5.5:8000/feeds/logs/eventLog" 

捲曲說,它無法到達主機:

curl: (7) couldn't connect to host 

任何幫助獲得這項工作非常感謝。

回答

0

問題原來是我的GSA配置。 GSA配置爲需要通過HTTPS進行通信。由於所有GSA默認爲通過端口8000的HTTP流量和通過8443的HTTPS流量,我的問題通過發送以下內容解決:

curl -k -X GET -d query=User -H "Content-type: application/atom+xml" -H "Authorization: GoogleLogin Auth=e73265ce254f7c4afbcbee1743a56e81" "https://ip.ad.dr.ess:8443/feeds/logs/eventLog" 
+0

我有同樣的問題,但我正在嘗試使用以下代碼導入com.google.enterprise.apis.client.GsaClient訪問java中的GSA; GsaClient myClient = new GsaClient(「gsaAddr」,gsaPort,「myUserId」,「myPassword」);我的問題是如何在java中添加身份驗證令牌?任何幫助非常感謝 – Yaba

0

檢查您是否可以telnet到IP地址。如果你得到一個超時那裏,你應該檢查防火牆等

C:\> telnet 10.29.5.5 8000 

這看起來比無論是GSA或捲曲的問題更通用的網絡問題。

+0

您可能是對的。我無法telnet到端口8000.但是我可以telnet到端口8443在相同的地址。我猜這意味着機器不在該端口上偵聽。任何想法如何解決這個問題? – ewok