0

休憩するのが初めてで、REST が何であるかさえ知らなかったので、いくつかのビデオを見始め、正しいアプローチへのガイドとなる本を手に取りました。残念ながら、私の最初のバージョンは完全に失敗しており、その実装を使用しているすべての顧客をすぐに壊さなければならない可能性があります。二度とこのようなことをする必要がないようにするために、あなたの助けが必要です!

ここで気になる DB テーブルがいくつかあります。システムに入力すると、各一次購入者には一意の「CaseNumber」が与えられます。これは、'SequenceNumber' に加えて、'AllBuyers' を識別するために使用されます。この CaseNumber は Web サービスのユーザーに返され、将来の使用のために保存されます。ただし、シーケンス番号は、XML / JSON 内の位置に基づいて暗示されます。

これらのテーブルを指定するには -> たとえば、私が車​​を購入する場合、私は主要な購入者となり、プライマリ テーブルと AllBuyers テーブルの両方に入力されます。ただし、私の信用が悪ければ、配偶者にローンの連帯保証人を付けることができました。これにより、彼女は二次購入者になり、「AllBuyers」テーブルに独占的に登録されます。

現在、REST URI を 1 つ「/buyers/」として設定しています。これは、すべての購入者のすべての情報を一度に入力することを義務付けています。同様に、この URI を更新すると、両方のテーブルでプライマリが更新され、ペイロード内のセカンダリ バイヤーが既存のものを置き換えます。

最終的に、「PrimaryBuyer」および「AllBuyers」テーブルに直接アクセスする方法はありません。

私はこの問題の解決策を考えてみましたが、必ずしも RESTful であるか、顧客にとって苦痛ではないものを考え出すことができませんでした。ユーザーが (追加で言うと) /primarybuyer/ に POST し、返されたケース番号を取得し、同じ情報を POST してから /allbuyers/ にいくつかを POST する必要があると考えるのはばかげていますか? とりわけ、帯域幅に関しては少しばかげているようです。現状のままでいいのでしょうか?

このような一見単​​純な質問に答えるには、情報が多すぎないことを願っています。

4

3 に答える 3

0

クライアントアプリケーションがそうする場合POST /PrimaryBuyer、サーバーがそのケース情報をリソースにコピーできない理由はなく/AllBuyers、その逆も同様です。

于 2013-07-09T20:24:14.667 に答える
0

ユーザーが (追加で言うと) /primarybuyer/ に POST し、返されたケース番号を取得し、同じ情報を POST してから /allbuyers/ にいくつかを POST する必要があると考えるのはばかげていますか?

「ユーザー」とは、サービスを利用する人またはシステム (ブラウザ) のことですか?

REST サービスの使用は、通常、システムによって行われます。今日では、多くのブラウザ + Javascript を意味します。ユーザーの代わりに仕事をすることは Web ファサードで行われ、その背後ですべての (Javascript) コードを実行して、適切な REST 呼び出しを行います。

于 2013-07-09T15:43:20.017 に答える