私はこの素晴らしいアプリケーションを書いています。反対側の Restful ストアのみを使用する 1 ページの完全な AJAX アプリケーションを作成するのは、私の最初の試みです。
さて... コードの一部を書きましたが、ここまでは GET を使用した単純なクエリしか必要ありませんでした。ただし、すべてをきちんと保つために、「プロトコル」を用意するようにしました。各リクエストには次の形式の応答がありました。
{↵ "ack": "ERROR", "message": "required filter not passed",↵ "errors": { "name": "parameter required"↵ } }
エラーが発生した場合 (この場合、ユーザーにフィルターを設定するように要求します)。
今... GETが機能する場合、結果が次のようになるように「データ」フィールドもあります。
{↵ "ack": "OK", "data": { ... } }
たとえば、dgrid は「データ」キーではなく、返されたオブジェクトの「ルート」(いわば) にデータを期待しているため、Dojo で問題が発生しています。
可能な解決策:
1)JsonRestファイルをハックします(すでに少し異なります。タイムアウトなどを追加しました。結局、ボイラープレートになることを意図しています)。これにより、「クエリ」の場合、実際にthen()で結果を操作し、生データを返します
2) プロトコルを変更して、HTTP ステータスが 200 の場合、エラー メッセージや出力するものがないため、単純にデータを返すようにします。
3) クエリの後に返された JSON の「データ」部分にあるものを使用するように、何らかの方法ですべてのウィジェットを納得させます (これは非常にありそうもないことです)。
どちらに行けばいいですか?一方では、プロトコルが常に同じフォーマットに従っているという事実が気に入っています (それが役に立たないことは認めますが)。一方、JsonRest の変更は簡単に思えます。しかし、再び、サードパーティの API は、返されたオブジェクトの「データ」キーからデータを取得する必要があることを好まない場合があります...
ここで何をするのが正気ですか?
ありがとう!
メルク。