2011-02-09 111 views
1

在聖誕節期間,我實施了一些代碼,以使用頻道API向我的App Engine應用程序打開頻道,並且工作正常。Google App Engine頻道API和Chrome擴展

我最近返回到代碼,發現它已損壞,並且問題似乎在於talkgadget客戶端代碼正在嘗試加載到框架中。

我在12月21日拍攝了/ _ah/channel/jsapi返回的代碼的快照,並將其與今天的代碼進行了比較。

當舊版本試圖獲取talkgadget.google.com/talkgadget/d?token=[my-token]時,它被硬編碼爲使用http。很明顯,代碼後來被更改爲檢查document.location中的頁面協議,並適應使用https的情況。現在的問題是,當在擴展中運行chrome時,它會獲得chrome-extension:作爲協議,並且通道無法在擴展中打開。

將背景頁面的底部設置爲我的appspot網址不會更改document.location,但我有一些模糊的概念,它應該。 (不知道標準說什麼。)

有沒有解決方法?一個想法是創建我自己的iframe加載我的網站,但它會嵌套實際的通道iframe,使事情複雜化。

我不知道Moishe或App Engine團隊的其他人是否可以對此發表評論。看起來這是一個錯誤,代碼應該通過測試協議並搜索基本標記作爲替代方法,或者通過JavaScript對象提供某種方式來配置它。

回答

0

是的,這是一個錯誤。提交了一個修復程序,並且正在進行生產;它可能會在一週左右出局。

與此同時,您對嵌入在擴展中的iframe的想法應該起作用。

+0

謝謝我會尋找修復。你的一位同事也在GAE開發者論壇上回答了這個問題,儘管在我的生活中我再也找不到這個帖子了。它神祕地消失了。 – 2011-02-20 22:38:16