2017-06-02 36 views
1

我正在使用不使用react-rails gem的Rails/React應用程序。代碼分爲兩個目錄 - 一個用於FE,另一個用於BE。我一直負責爲攝像頭創建一個嵌入式跨瀏覽器解決方案來錄製視頻,並且已經實施了Chrome/FF(使用webRTC API)的解決方案,並且運行良好。我遇到的困難,很多人似乎也試圖實現這一點,以適應Safari和IE。如何從Rails Asset Pipeline獲取.swf文件而不使用輔助方法?

我發現什麼看起來像使用閃光燈體面的實施,所以我想包括在我的項目中。我遇到的問題是將.swf文件提供給React代碼。由於FE代碼是從BE代碼中分離出來的,因此我沒有爲我的任何FE代碼使用Rails Views。 HTML DOM元素需要data =「path_to_swf_file」,但是當我在Rails中的公共目錄中有文件時,會出現422錯誤。有誰知道處理這個問題的最佳方法?我應該爲此創建一個控制器並且只是以這種方式提供.swf文件?即使從Rails視圖中拆分,我是否可以直接從我的React代碼訪問公用文件夾?

支持問題:有誰知道可以與React/Rails集成的企業解決方案嗎?我認爲如果實施它本身可能是最好的選擇,如果實施它本身就證明是非常麻煩的。

回答

0

我沒有這個問題的交鑰匙的答案,但這裏有兩種方法,這可能做的伎倆:

  • 從您的JS代碼中,加載年代由產生的manifest.json Rails資產管道查找資產的路徑。這樣,您可以查找SWF文件的完整路徑,包括摘要。

  • 如果您可以接受對Rails控制器的請求,您可能需要考慮不提供文件本身,而只是提供文件的資源路徑。這樣,如果您決定開始使用CDN,它仍然可以工作,並且文件不需要由應用程序服務器提供。另外,這可能是action caching的一個用例。

將其作爲答案發布,使其更具可讀性。但是,如果任何人在React on Rails上沒有更多的經驗,如果沒有react-rails有更好的解決方案,我對此感興趣:)

相關問題