問題タブ [restangular]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
8660 参照

angularjs - Restangular - ID 付きのオブジェクトの取得、オブジェクトの編集、オブジェクトの更新

私はこれを理解できないようです -

私は次のようなことをしたい:

しかし、これは機能contentしません-put関数がなく、興味深いことに、 もありませんname(それは「約束」だからですか?)

現在、Restangular のドキュメントではオブジェクトの更新について説明していますが、そのオブジェクトはコレクションの一部として取得されます。

そして、これは機能します。しかし!リスト全体を取得しただけでなく、ID でコンテンツを簡単に取得する方法がわかりません。何かのようなものRestangular.all("contents").getList().find(2)

customPUT(..)次善の策のようです:

Railsサーバーがそれを受信した場合のみparams["content"] == {id: 2}、クライアント側の何かがその値を踏みにじっているようです。(繰り返しますが、nameフィールドがないことに注意してください)。今、私は次のようなことをするだけでそれを回避することができます:

しかし、あなたがこれをどのように行うべきかを私が見逃しているようです。

0 投票する
1 に答える
165 参照

javascript - 最初のリクエストの処理を続行しながら、php への追加の ajax リクエストを許可する

Angular で REST リクエストを使用してバックエンドで PDF を生成するプロセスを呼び出しています (これらを作成するために restangular を使用しています)。

私の問題は、pdf の生成に時間がかかる可能性があるため、このプロセスが機能している間、ユーザーが作業を継続できるようにすることです。テストとして、クライアントにデータを返す前に 5 秒の遅延があるサービスを作成しました。私はそれを次のように呼びます:

これは問題なく動作しますが、通話が終了する前に行う他のリクエストはすべてブロックされます。.then 関数を連鎖させていれば、これが起こると予想していましたが、完全に別の REST 要求を呼び出しています。

クライアントに戻る前に、PDF を生成するサービスが終了するのを待つ必要があります。そうしないと、プロセスが完了しません。待機する必要がありますか、それとも 2 つ以上の REST 要求を同時に実行することは可能ですか?

ありがとう!

編集....誰もこの質問に興味がないようです! とにかく、私はphpからリクエストを返してjavascriptを実行し続けるオプションを検討しており、この種の半分は機能します。この回答にはいくつかのバージョンがあり、stackoverflow に散らばっています。これはhereからのものです。

実際には、php が応答をブラウザに送り返し、処理を続行します。ただし、クライアントからの次の要求は、最初の要求の処理が完了するまで待機してから実行されます。

私が望む動作は、別のブラウザーからメソッドを呼び出しているかのように、php が新しいスレッドを開始することです (もちろん、テスト済みで動作します)。

0 投票する
1 に答える
439 参照

angularjs - Restangular で間違ったパスを取得します。私は何を間違っていますか?

これは概念のミニチュア証明です。Thing #100 を取得して保存します。

まず、GET リクエストを送信します。

しかし、その後はPUTします

私はそれが元の同じ URL に PUT することを期待します。代わりに、URLhttp://localhost:8080/things/100をリストとして扱い、その中のエンティティを見つけようとします100

これを に戻したいだけですhttp://localhost:8080/things/100。私は何を間違っていますか?

編集:

代わりにこれをフェッチすると、PUTティンが機能します。しかし、私はこの方法でこれを行うことができると思っていましたall

そして、わかりやすくするために、ここで を定義しますThingsAPI

0 投票する
1 に答える
3072 参照

angularjs - $httpBackend.flush() には、オブジェクトを定義するためのタイムアウトがまだ必要です

Karma を使用して AngularJS アプリを単体テストし、$HttpBackend を使用してバックエンドをスタブしています。どういうわけか、コントローラー内の変数の一部がまだ未定義のままであるため、flush() メソッドはすべてのリクエストを解決していないようです。ただし、期待を解決する前にタイムアウトを追加すると、正常に動作します!

私のコントローラー:

私の仕様:

どんな助けでも大歓迎です!

0 投票する
1 に答える
13040 参照

angularjs - Restangular を使用したペイロードでの PUT/GET

作品の 1 つで Restangular を使用しています

サーバー担当者は、AngularJS クライアントに統合する必要がある次の呼び出しを提供してくれました

  1. PUT api/partners/password – RequestPayload[{password,confirmpassword}] パートナー ID がヘッダーで送信されています

  2. GET api/partners/password/forgot/ - リクエスト ペイロード [{emailaddress}] パートナー ID がヘッダーで送信されています

これらのサービスを呼び出すために私が書いた JavaScript コードは次のとおりです。

  1. Restangular.all('パートナー').one('パスワード').put(params); - パラメータをクエリ文字列として送信
  2. Restangular.all('パートナー').one('パスワード').one('忘れた').get(params); - URL でオブジェクトを送信します

他の方法を試しましたが、正しい呼び出しができません。

みんな助けて!