2011-01-20 4 views
5

私の言うことは、クライアント側でもっとやっていく方向性があるからです。フロントエンドにはjquery/HTML、バックエンドには.NET WebサービスだけのWebサイトjquery ajaxコマンドによって呼び出されますか?jquery/.NETサービスのみのWebサイトを作成することは可能ですか、それとも意味がありますか?

これはどこでも行われますか?私はそれが行われて表示されません..どのように来る?簡単な解決策のようです。 ASP.NET抽象レイヤーを扱う必要はありません。

+1

これは「優雅な劣化」と「プログレッシブエンハンスメント」を遵守していない可能性があります。ユーザーがJSを無効にすると、そのサイトは100%使用できなくなります。 – thirtydot

+1

JSを有効にしていないと、Windows 3.1を実行しているようです。もちろん、新しくエキサイティングなことはありません:)お金を使う人は、すべてJavaScript対応のブラウザを使用しています。 – jmort253

+0

私はJSについて忘れました。私は2011年にあなたがそれを使用するブラウザを持っていることを人々に要求することを望んでいます – punkouter

答えて

0

これはかなり可能です。私は最初のページをロードすると、サーバーはクライアント上でレンダリングされるJSONデータを送信するだけのサイトを持っています。 (この場合サーバーはPHPを実行しますが)

+0

これは、.NET以外のすべてでこのコンセプトが実行されたようです。本当に難しいと思うのですか?私は誰もこれをやっていない大きな理由をいくつか見逃しているに違いない。 – punkouter

+1

アイデアはない、誰かが持っていると確信している、そのちょうど私はそれについて知らない。それはprotocallを持っていることについて素晴らしいことです。両者はHTTP経由でJSONを送信することに同意し、各側で使用する言語はフレキシブルで –

3

Googleは、あなたが参照しているこの方法を示すデモを提供しています。 Google App Engineの場合はAutoshoppe Demoです。それはJavaですが、その概念は.NETアプリケーションにも当てはまります。

このアプリには、拡張子が.htmlのプレーンなバニラHTMLページが含まれています。 HTMLプログラマーの人生を複雑にするサーバーサイドビュー技術はありません。 HTMLページでは、JavaScript AJAXを使用して、データストアと対話するSpring 3.0を使用して構築されたREST Webサービスと対話します。

  • 要求データが要求応答データは応答JSONとして返され
  • にJSONとして渡されます。

これは、誰でもこのAPIの上にユーザーインターフェイスを作成できること、またはそのデータとやりとりする.NETプロジェクトを作成できることを意味します。 RESTは、拡張可能な階層化サービスを作成するための優れたアーキテクチャです。

このテクニックが広く使われていないのは、開発者がASPファイル(Java for JSP)などHTMLのビューテクノロジベンダーのマークアップを使用するように促すビューテクノロジーに悩まされているからです。基本的にこれらのフレームワークの作者はエンジニアであり、WebデザイナーやUIデザイナーではないため、しばらくの間練習してきたことです。

また、このメソッドが提供する利点を確認するためにRESTをかなり理解しており、ジュニア開発者はこれらの概念に時々苦労しています。

AutoShoppeのデモをガイドラインとして使用して.NETでこの問題に取り組んでいた場合は、JSONを.NETオブジェクトに変換してJSONに戻すことができるオブジェクトマッパーを使用することをお勧めします。これはJSONを自分で解析するよりもはるかにクリーンなアプローチです。

このRESTfulなアプローチの利点は、コンテンツ、動作、プレゼンテーションがWebプログラマにHTMLファイルを与えることができる点から完全に100%離れていることです。 NET環境。デザイナーはツールを使用し、Visual Studio.NETをインストール、構成、実行する必要はありません。実際、ファイルはデスクトップから正しく実行されます。

EDIT:おそらく、多くのMVCフレームワークではこれが新しい概念であるため、多くのMVCフレームワークでそれほどサポートされていないことがあります。現在、クライアント側とサーバー側の間のブリッジは、開発者が書き込む必要があります。

AutoShoppeデモでは、開発者はJSONをサーバーに送信する前にJSONに変換するためのJavaScriptでプロトタイプクラスを作成し、JSONをJavaScriptオブジェクトにマーシャリングし、そのデータをHTML 。サーバー側では、Object Mapperを使用してJSONをオブジェクトに逆シリアル化しました。ほとんどの複雑さはサーバー上にありました。

デザイナーとクライアントが簡単にやり取りできる100%再利用可能なRESTfulサービスにサーバーサイドコンポーネントを変換する利点は、シナリオによっては不利になります。良い例は、クライアントが独自のユーザーインターフェイスをコーディングしたり、製品のホワイトリストを完全に管理したりすることが推奨されるサービスです。これは多くの理由の1つですwhy I won't use server side view technologies

+0

なので、通常のSOAPサービスの代わりにREST Webサービスを使用するのはなぜですか?私は最も難しい部分は、クライアント側のテンプレートをやっていると仮定し、おそらく何かをviewstateで自動的に行われたjqueryで行う必要がありますか?不思議なことに、これは非常に良い懸念の分離を与えられた概念の新しい.NET証明があるということです。 – punkouter

+0

そして、.NET MVCはこれにどこに適合しますか? Webフォームのコンセプトはありませんが、Webサービスを呼び出してクライアント側のHTMLにデータを取り込むのではなく、サーバー側からHTML全体をリロードします。 – punkouter

+0

@punkouter - RESTはSOAPよりも柔軟で簡単です。 RESTは、複雑なレイヤード・システム、または単なるURLを介してアクセス可能な単純なサービスをサポートできます。 1つの欠点は、現在、自動ビューを扱う簡単な方法ではないということです。私は反映するために私の答えを更新します。 Webフォームの場合、AJAXを使用してリクエストをPOSTし、コールバックメソッドを使用してフォームフィールドを更新します。フルリフレッシュを行う必要はなく、Webページをより豊かなインターネットアプリケーションにします。 – jmort253

関連する問題