問題タブ [httpbuilder]

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 投票する
5 に答える
58970 参照

json - Groovy の HTTPBuilder を使用して JSON データを投稿する

HttpBuilder を使用して JSON データを投稿する方法に関するこのドキュメントを見つけました。私はこれに慣れていませんが、非常に単純な例であり、従うのは簡単です。必要なすべての依存関係をインポートしたと仮定して、コードを次に示します。

今私の問題は、例外が発生することです

私は何か見落としてますか?ご協力いただければ幸いです。

0 投票する
3 に答える
9607 参照

grails - grailsにhttpbuilderプラグインをインストールして使用する方法

Grailsにhttpbuilderプラグインをインストールして使用するにはどうすればよいですか?

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

groovy - Groovy HttpBuilder を使用した Google 検索のスクレイピング - 結果が html または xml として解析されないようです

Google 検索から単純な検索を要求し、結果セットを解析する単純な Groovy スクリプトを作成しています。Custom Search API があることは知っていますが、それはうまくいかないので、その方向に向けないでください。

HTTPBuilder を使用してリクエストを作成しています。他のすべてのメソッド "string".toURL()、HTMLCleaner... で呼び出しを行うと、すべて http 403 コードを取得することがわかりました。リクエストの見出しが Google に対して有効ではないためだと思います。

HTTP Builder で非 403 リクエストを作成および取得できます。つまり、「html」で println を実行すると (以下のコード スニペットを参照)、html や xml のようには見えません。それはテキストのように見えます。

応答を取得するための HTTPBuilder スニペットは次のとおりです。

結果が返ってきたので、以下のように解析してみます。最初に実際の構造を提供し、次に解析を提供します。つまり、解析された要素には何も表示されません。

実際の構造:

html->body#gsr->div#main->div->div#cnt->div#rcnt->div#center_col->div#res.med->div#search->div#ires->ol# rso->

コード:

それで、これは不可能ですか?Google は私を偽装してガベージ データを送信していますか、それとも HTTPBuilder をもう少し調整する必要がありますか? 何か案は?

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

groovy - httpbuilderとgroovyを使用して同じパラメータを複数回GETする方法は?

Groovy 1.8 と HttpBuilder 0.5.1 を使用して REST Web インターフェイスと通信しています。私はこれを機能させています:

これらの 2 つを 1 つに結合する必要があります。

同じ GET で同じクエリ変数 (フィルター) を 2 回組み合わせるにはどうすればよいですか?

私はこれを試しました:

しかし、それは機能しません。

よろしく、

ウィム

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

groovy - クロージャー パラメーターを含む HTTPBuilder get メソッドが MissingMethodException を返す

以下のコード:

なぜ例外が発生するのですか? http://groovy.codehaus.org/modules/http-builder/doc/json.htmlと同じコードを使用していますが、動作するはずです。

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

soap - GroovyHTTPBuilderSOAP応答が適切に解析されていません

XmlSlurperがどうやら結果に取り組んでいない理由がわかりません。

につながる

更新:John Wagenleitnerの洞察のおかげで、私はもう少し掘り下げました。

そのアサートを追加すると、次の問題が発生します。

リクエストパラメータをからPOST, XMLに変更すると、次のことPOST, TEXTがわかります。

..。

したがって、XmlSlurperは、変数が出力されているときに、SOAPのものを破棄し、最も内側のノード()を評価しているように見えますが、実際にはそのノードに移動していません。これは予想される動作ですか?

より完全で最新のSOAP呼び出しを見つけて、httpBuilderを使用して解析することができなかったため、XMLが適切なコンテンツタイプであると想定しました。しかし、私はTEXTを受け入れて、自分で本体を解析する必要があるように見えます。httpBuilderでSOAP応答を処理するより良い方法はありますか?

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

session - GroovyHttpBuilderを使用して2つのリクエスト間でセッション状態を維持する方法

私は認証が必要な統合テストに取り組んでいます。セッション状態(つまりCookie)は、リクエスト間で維持されていないようです。CookieManagerなどはありますか?

0 投票する
3 に答える
2623 参照

json - Groovy HTTPBuilder と Jackson

要求に応じて本文を設定するときに、Groovy の HTTPBuilder で JSON-lib の代わりに Jackson を使用できますか?

例:

この例では、応答を処理するときに Jackson を使用していますが、要求は JSON-lib を使用していると思います。

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

groovy - 自分のメソッドで withRest() をラップして、その中でクロージャーを実行できないのはなぜですか?

Griffon 用の HTTPBuilder プラグインは優れており、サーバー呼び出しを非常に簡素化してくれます。ただし、唯一の問題は、同じセットアップ コードをあちこちで繰り返し続ける必要がないことです。

私がやりたいことは、一連のサーバー呼び出しと他のコードを同じ接続設定でラップして、1 か所だけに配置することです。

例として、これは私が持っているものです:

そして、これが私がやりたいことです:

Groovy とクロージャーについて私が知っていることから、これはクロージャーの優れた用途になるはずです。これにより、一般的な「リソースのセットアップ/破棄」コードが 1 か所に取り除かれ、サーバー呼び出しの本質に集中できるようになるからです。

問題は、動的メソッドが適切に追加されているように見えないことです。これは、必要な方法でコードを実行すると、呼び出さMissingMethodExceptionれたときに s がスローされるためです。stmts()

私がやろうとしていることを行うためのより良い方法があると確信していますが、それでも、私がやろうとしていることはうまくいくはずです. 私はまだGroovyにかなり慣れていませんが、スコープルールを何度も調べましたが、HTTPBuilderの動的メソッドが渡されたクロージャーを介して適切にアタッチされていないなどのことしか考えられません。

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

json - 「クラス」属性が JSON オブジェクトにない場合、JSON からドメイン クラスへのデータ バインディングが null プロパティに対して正しくない

別のドメイン オブジェクトへの null 許容参照を持つ既存のドメイン オブジェクトに JSON ペイロードをバインドしようとすると、インバウンド JSON が参照に対して null を示している場合、バインドは失敗します。これにより、永続化の試行が次のエラーで失敗します。

問題のドメイン オブジェクトは次のとおりです。

エラーをスローするコントローラーコードは次のとおりです。

これは、問題を引き起こす JSON ペイロードです。

しかし、この JSON ペイロードは問題なく動作します。

何が起こるかというとuploader、セッションのプロパティが に設定されてい"server.Uploader : null"ます。これは の後.dump()sessionInstanceオブジェクトsessionInstance.properties = paramsです:

プロパティが JSON ペイロードにある場合はすべて正常に機能し"class": "server.Session"ますが、JSON ペイロードがないとすべてが機能しなくなります。データバインディングはこれを処理できると思います.残りのプロパティはうまくマッピングされていますが、参照にはひどく失敗しているようです.

最後に、これに遭遇した理由は、REST API に対して Griffon クライアントを構築しようとしているからです。HTTPBuilder は、元の JSON 応答を に変換するときに を取り除いているようです"class": "server.Session"net.sf.json.JSONObject応答にはプロパティが含まれていますが、ダンプには含まれてnet.sf.json.JSONObjectおらず、後続の JSON 要求ペイロードも含まれていません。

  1. これは、JSON オブジェクトの「クラス」プロパティがない場合の Grails のデータ バインド方法のバグですか?
  2. これは、HTTPBuilder が JSON 応答を解析する方法のバグですか?
  3. HTTPBuilder が net.sf.json.JSONObject から JSON を出力する方法のバグですか?
  4. 私は完全に間違ったことをしているだけですか?

アップデート

私はいくつかの追加情報を見つけました:

  1. 一意の制約を削除しても動作は変わりません
  2. uploaderフィールドがnullではなく、受信 JSON オブジェクトがそれを に設定しようとしている場合null、プロパティは変更されません (エラーは発生しません)。ただし、"class": "server.Session"プロパティが受信 JSON ペイロードにある場合はnull、期待どおりに変更されます。