問題タブ [google-http-client]

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

java - Android oauth2 認証

私は独自の oauth2 プロバイダーを持っています。付与タイプを認証コードとして設定しました。curl を使用してこれを正常にテストできます

oauth私が取り組んでいるAndroidアプリに実装したいと思います。流れを理解したい。

このトピックに関するいくつかのドキュメントを読みましたが、理解できないようです。ユーザー名とパスワードを渡して、oauth2 フローを実行できるようにしたい。誰かが絵を描いてくれたら本当にありがたいです?

0 投票する
2 に答える
1239 参照

apache-httpclient-4.x - multipart-form-data を含む繰り返し可能な POST リクエストを作成する方法は?

POSTを含むリクエストを作成しようとしてmultipart-form-dataいますNT Credentials。認証要求によりPOSTが再送信され、繰り返し不可能なエンティティ例外が発生します。

MultipartContentで生成されたエンティティをラップしようとしましたBufferedHttpEntityが、スローしNullPointerExceptionsますか?

のドキュメントはByteArrayContent言う

バイト配列の内容に基づいて反復可能な入力ストリームを生成する AbstractInputStreamContent の具体的な実装。

すべての部分を再現可能にしても、問題は解決しません。このコードは を System.out.println("c.retrySupported() = " + c.retrySupported());出力するためc.retrySupported() = trueです。

次のドキュメントを見つけました。

1.1.4.1. 反復可能なエンティティ エンティティは反復可能である場合があります。つまり、そのコンテンツを複数回読み取ることができます。これは、自己完結型のエンティティ (ByteArrayEntity や StringEntity など) でのみ可能です。

文字列の内容を抽出して、メディア タイプの に変換MultipartContentしましたが、同じエラーが発生します。ByteArrayContentmulti/part-form

しかし、私が試して呼び出すと、まだ次の例外が発生しますrequest.execute()

ApacheHttpTransportでは、反復可能なエンティティを作成するよう説得するにはどうすればよいでしょうか?

0 投票する
2 に答える
1421 参照

java - JsonHttpContent の出力が空なのはなぜですか?

Google App Engine (1.9.30) で Google Http クライアント ライブラリ (1.20) を使用して、POST リクエストを Google Cloud Messaging (GCM) サーバーに送信しています。コードは次のとおりです。

これで、content.writeTo()常に空の JSON が出力されます。何故ですか?私は何を間違っていますか?GcmDownstreamDtoクラス (Lombok を使用してゲッターとセッターを生成) :

当面の目標は、( API キーの有効性を確認するから) と同じ応答を生成することです。

私はすでに使用してテストしcurlたので、API キーが有効であることはわかっています。基本クラスを構築するために Java コードで同じことをしたいだけです。

sendGcmMessage()次のように呼び出されます。

すべての助けに感謝します。

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

android - DirectionResult に null ルートとウェイポイントがある - Google Directions API

このプログラムの私の目標は、Google Directions API をポーリングし、Android アプリの MapView で Polyline によってコースをプロットすることでした。

ただし、DirectionsResultAPI 呼び出しから返されると、アクセスしようとするとNullPointerException が発生directionsResult.routes[0]します。directionsResult.geocodedWaypoints[0]

現在、maven リポジトリを使用して次のライブラリをインポートしています (build.gradle からの抜粋)。

デバッグ呼び出しをコメントアウトした AsyncTask 実装内の現在のコード:

私のデバッグプロセス:

  1. これは私の印刷されたリクエスト URL です。

    http://maps.googleapis.com/maps/api/directions/json?origin=40.426870,-86.925083&destination=40.430092,-86.921679&sensor=true

明らかに、それは短いが完全な呼び出しです。ポリラインポイントを含む脚の要素を使用します(これが私が求めているものだと思います)。この JSON は、読み取りから得た応答と同じhttpResponse.parseAsString()です。

  1. StackExchange の質問をいくつか見てみると、データが受信されるのを待つことを提案する人もいました。リクエストサイクルのすべての不可欠な部分の間に1秒の遅延を置きましたが、結果はありません。

  2. 呼び出しの他の部分はどれも null ではありませんでした。

  3. httpResponse.getStatusCode()200を返しました。

  4. httpResponse.getStatusMessage()OKを返しました。

DirectionsResult以下を使用して JSON を解析しようとするまで、すべてが正常に表示されますHttpResponse

DirectionsResultその後、 :routesとの 2 つのフィールドにアクセスすると NullPointerException が発生しgeocodedWaypointsます。

このクラスで同様の問題が発生した人はいますか? ここで解決されない場合は、適切な google-http-client ライブラリの GitHub ページに問題を提出するかもしれないと考えていました。

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

java - 「再試行後にのみ成功した」タスクをマークする方法はありますか?

バックオフ再試行メカニズムを使用して、http 要求のリストを送信したいと考えています。

再試行後にのみ成功したリクエストを (フラグで) マークする方法はありますか?

私はいくつかの解決策を見ました:

1) https://github.com/rholder/guava-retrying

2) https://developers.google.com/api-client-library/java/google-http-java-client/backoff

しかし、このフラグを統合する方法はありませんでした。これらのライブラリに他のライブラリやアイデアはありますか?

このメソッドをオーバーライドしようとしましたが、その指示フラグを返す方法がありません

0 投票する
2 に答える
158 参照

java - Jackson ライブラリで JSON をシリアル化するための適切な POJO

問題は、次のような JSON 用の POJO を適切に構築する方法です。

問題は、必要なデータを保持する配列に多くの異なる名前があるため、 Google Developers docsに示されているように JSON を解析できないことです。