1

私はHuluの新しいウェブサイトを見てきましたが、開発者の観点から(そしてデザイナーの観点からも)非常に感銘を受けました。

http / httpsを切り替えない限り、コンテンツは完全にjsonリクエストから提供されることがわかりました。これは、ブラウズバックボタンのサポートを維持しながら、各URLに直接アクセスできるようにしながら、このレベルのajaxを使用できるという大きな偉業です。

学習体験としてこのようなウェブサイトを作りたいです。この種のサポートを提供できるフレームワークはありますか?

できると思っていた...

  • jQueryを活用する
  • KnockoutJSのようなクライアントサイドMVVMフレームワークを使用しますか?
  • ASP.NET MVCコンテンツネゴシエーションを使用して、acceptヘッダーによって決定されたhtmlまたはjsonを提供します。
  • 同じコードベースを使用します。
  • クライアント側とサーバー側のレンダリングに同じテンプレートを使用する
  • pagetitle/メタタグなどを更新する方法を提供します。

jsonとクライアント側のテンプレートを使用したページレベルのajaxについて考えているので、Ajaxフォーム/ウィジェットなどは引き続き使用されます。

どう思いますか?そこにフレームワークはありますか?私が従うことができるパターンはありますか?

4

2 に答える 2

0

同じテンプレートサーバー側とクライアント側の使用に関する箇条書きに答えるには、ほこりをチェックしてください。もともとはakdubyaによって開発されましたが、その後、LinkedInによって採用および強化されました。彼らはそれを使用して、モバイルアプリのクライアント側でテンプレートをレンダリングします。個人的にはサーバー側で使用しましたが、うまく機能します。

于 2012-09-02T02:38:33.433 に答える
0

最初に AJAX をサポートしない Web サイトを構築してから、その上に AJAX を追加することをお勧めします。これを行うことは、次のことを意味します。

  • JavaScript を使用しないユーザーは、既に Web サイトにアクセスできます
  • ユーザーはすでに任意の URL に直接アクセスできます。

AJAX サポートの追加は、さまざまな JavaScript ライブラリによって実現できます。json コンテンツをレンダリングできるようにするには、javascript templatingを確認する必要があります。AJAX サポート (ファイル拡張子 .ejs) を追加する場合は、サーバー側でも JavaScript テンプレートを使用する必要があります。これにはおそらく、サーバー上で JavaScript を実行するための適切なライブラリが必要になります。

AJAX サポートを追加するときは、ブラウザの戻る/進む/履歴のサポートに「History.js」ライブラリを使用する必要があります。

間違えないでください。これは巨大なプロジェクトです (あなたのウェブサイトが数ページしかない場合を除きます)。したがって、すべての AJAX サポートを可能な限り最高の標準に追加するには、長い時間がかかります。

于 2012-09-02T01:52:42.827 に答える