1

Web サイトを phonegap android アプリケーションに変換しようとしています。Web サーバーは、クライアントのセッション ID を Cookie として設定します。このセッション ID は、セッション全体で維持する必要があります。

href、window.location、または navigator.app.loadUrl を使用して、あるページから別のページ (2 番目のページはアプリ内のローカル html ファイル) に移動すると、2 番目のページがブラウザーに読み込まれ、Cookie が取得されます。が破壊されたので、2 ページ目から有効な ajax リクエストを行うことができません。

すべてのページを 1 つの html ファイル (jquery mobile など) に入れるのは好ましくありません。個別のhtmlファイルがある場合、2番目のページがブラウザーではなく同じWebビューにロードされるように(Cookieが保持されるように)、それらの間を移動する方法。そのために別のアクティビティを作成する必要がありますか?

上記のものを除いて、phonegap で他のナビゲーション方法はありますか? または、同じ webview にとどまる唯一の方法は、ajax を使用してページを動的にロードし、既存のページをそれらに置き換えることですか?

もう 1 つの可能性は、応答からセッション ID を解析し、それをローカル ストレージに保存して、すべての要求に追加することです。しかし、この Cookie は HTTP 読み取り専用なので、javascript を使用して読み取ることはできません。

4

1 に答える 1

1

Backbone.jsは、優れたページネーションルーティング機能を備えた優れたツールです。ハッシュは変更されますが、ページが更新されないため、urjsオブジェクトは同じままです。試してみてください。

私はそれがクッキーよりもlocalStorageを使用する方が良いと思います、それはより簡単で、あなたのページから別のページに行くでしょう。

通知を受け取ります。ユーザーが閉じてアプリを再度開いても、localStorageはデバイスに残ります。

利用方法:

localStorage.setItem("foo","bar");
console.log(localStorage.getItem("foo")); //Output: bar
于 2013-01-27T01:17:32.753 に答える