簡體   English   中英

如何通過https從Heroku上托管的Rails應用程序訪問Google雲端硬盤文檔內容?

[英]How to access Google Drive document contents through https from a Rails app hosted on Heroku?

我有一個我在Heroku上托管的Rails應用程序( https://github.com/ddelruss/loops )。 它使用Rails表單來收集用戶的Google ID,密碼和文檔ID,用於登錄Google驅動器,下載文檔內容以及呈現為D3可視化。 一切正常 - 測試你是否喜歡(並相信當前的安全性):

http://young-eyrie-4632.herokuapp.com/

您可以使用公開的演示文檔密鑰:0AtOGnLq8Mf_ydGtmMmI5UjhEUmlqQ0d6UHFVaWN2TWc

沒有存儲任何用戶信息,因為我希望盡可能保證網站的安全。 缺陷是該網站目前在http訪問,我理解這意味着用戶憑據從Web表單發送到未加密的Heroku / Rails。

所以,我想通過https訪問應用程序,Heroku通過ssl捎帶支持。 實際上,網站使用https://加載,並將呈現可視化頁面。 問題是Google doc不會返回任何結果。 登錄成功,沒有應用程序錯誤(根據heroku日志)...只是一個空的結果。

我該怎么做才能讓我的應用通過https工作,包括從Google雲端硬盤文檔中獲取結果? 請注意,我不需要兩者 - 如果https工作,我很好禁用http訪問。

謝謝,

達米安

我使用演示文檔和帶有http和https的Hierarchy選項運行您的應用程序,並且通過查看HTML,似乎內容在兩種情況下都存在,但在https的情況下不顯示。 也就是說,我相信Google正在正確歸還該文檔。

我沒有對這兩種情況下生成的HTML進行完整的比較,但是在快速瀏覽一下后,似乎http://d3js.org/d3.v2.js / script節點不存在於https訪問,因為它在http案例中。

希望這可以幫助。

皮特

4/25/13更新:查看我在Chrome上的控制台輸出,我看到以下錯誤:

[已屏蔽] https://young-eyrie-4632.herokuapp.com/loops/nodes上的頁面運行了來自http://mbostock.github.com/d3/d3.js的不安全內容。

我確認此腳本沒有出現在Chrome的“來源”標簽下,所以我收集它並沒有加載到https案例中。 我不知道您是否可以將其更改為https引用,或者您是否必須將其添加到存儲庫以便Rails在啟動時加載它。 這仍然是對http://d3js.org/d3.v2.js的引用。 我無法弄清楚它的來源。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM