1

私は、Web アプリケーションのオフライン アクセスの可能性を調査する任務を負っています。RailsでGoogleギアを使用した人々の経験は何ですか? 私はGearsonrailsプロジェクトを知っていますが、いくつかの非常に奇妙な構成があり、重要で活発な開発が行われていないようです。

他のオプションはありますか?既存の Rails アプリに正常にギアを追加した人はいますか? これは激痛ですか?

4

2 に答える 2

1

Google Gears は終了し、開発は終了しました。オフライン アクセスを可能にする API (SQL のような言語とキー値ストアを使用してクエリできるクライアント側データベース) を実装する HTML5 を使用して問題を解決しようとする方がよいでしょう。主要なブラウザーは、(開発中の) 標準を完全に実装しています。したがって、事実上廃止されたプラグインに対して開発するか、新しい標準をターゲットにするかを決定する必要があります。

于 2009-12-02T21:36:44.413 に答える
0

私はこれを自分で調べています-一般的には、オフラインで利用できるようにしたいものに応じて、クライアント側でセットアップする必要があるという考えです(注、これはテストされていないため、検証されていません-私は何を理解しているかだけです私は読みました - 私は今後数週間でいくつかの実験を行うことを計画しています...)

ほとんどの場合、Rails で標準の安静なリソースを設定し、クライアント ライブラリで次のようにすることをお勧めします。

  1. ページが読み込まれたら、Gears が読み込まれたかどうか、およびデータベースがクライアントで使用可能かどうかを確認します。
  2. 必要に応じてデータベースを作成します。
  3. ワーカー プロセスを使用して、RESTful コントローラーへの呼び出しを初期化し、必要なデータを取得します。データが返されたら、それをローカル データベースに書き込みます (ワーカー プロセスを使用すると、「マルチスレッド」エクスペリエンスが可能になり、確実にクライアントをロックしないでください。
  4. リモート サーバーを定期的にポーリングして、データの変更をチェックします。必要に応じて、新しいセットを取得し、ローカル データ キャッシュをリロードします。
  5. クライアントがオフラインの場合は、ローカル クライアント データベースを使用するように切り替えます。

明らかにこれは読み取り専用の例であり、AJAX クライアント側の呼び出しを使用してページにデータを入力する既存のアーキテクチャに依存しています。

あなたの手段は異なるかもしれませんが、私はただ遊んでみることをお勧めします-これを行うためにRailsプラグインなどを使用する必要がないことを覚えておいてください-クライアント側のスクリプトを自分でロールするだけです-そして、あなたが終わったら、あなたの仕事を素晴らしい小さな宝石または類似のものにリファクタリングすることができます...

于 2009-07-31T02:23:55.797 に答える