2010-12-11 46 views
1

我想使用html表單讓用戶鍵入他們的搜索詞,然後更新頁面上的iframe並將src屬性作爲多個網站的搜索頁面,即Google桌面,Salesforce和我們的開發wiki。我遇到的問題是Google桌面。看來他們十分重視的哈希您的搜索請求,即禁止從我剛使用結束:用於單獨的html表單搜索的Google桌面參數

HTTP : //127.0.0.1:4664/search?q= 任何 &標誌= 68 & NUM = 10個& S = pxCw38_-Hd7wCIZtD7-wbl6aaJY

,如果我可以只發送搜索詞,我的工作就完成。

任何關於通過JavaScript生成哈希的線索?
或者將Google桌面與其他搜索集成的另一種途徑?

+0

你所知道的,這方面是你的URL提供的?也許它是Base64?在上面的例子中, – Nakilon 2010-12-11 17:55:12

+0

,我在搜索'whatever'。其他查詢字符串變量(標誌,數字和s)是由谷歌桌面應用程序添加的。 – textual 2010-12-30 23:48:07

回答

0

據:http://code.google.com/apis/desktop/docs/queryapi.html


存儲的查詢網址有您需要執行任何谷歌桌面查詢的URL的第一部分。它看起來像下面這樣:

http://127.0.0.1:4664/search&s=1ftR7c_hVZKYvuYS-RWnFHk91Z0?q= 

你如何獲得存儲查詢網址取決於你的代碼是在Windows或Mac OS X上運行

的Windows

獲取查詢網址使用下面的值名稱註冊表:

HKEY_CURRENT_USER\Software\Google\Google Desktop\API\search_url 

的Mac OS X

使用CFPreferences從用戶首選項域com.google.Desktop.WebServer使用關鍵字search_url獲取存儲的查詢URL。例如:

CFStringRef val = CFPreferencesCopyValue(
    CFSTR("search_url"), 
    CFSTR("com.google.Desktop.WebServer"), 
    kCFPreferencesCurrentUser, 
    kCFPreferencesAnyHost); 
if (val) { 
    // act on the value 
    CFRelease(val); 
} 

所以,不知道怎麼去從JavaScript該值,但它看起來像他們期望的查詢詞被追加到末尾。