質問するログイン新規登録
Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

ネットワーク

ネットワークとは、複数のコンピューター間を接続する技術です。インターネットが最も主流なネットワークの形態で、TCP/IP・HTTP・DNSなどの様々なプロトコルや、ルータやサーバーなどの様々な機器の上に成り立っています。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Q&A

解決済

1回答

1619閲覧

AWS SDK for Androidを用いてレスポンスで返された本文を取得する方法

atta

総合スコア8

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

ネットワーク

ネットワークとは、複数のコンピューター間を接続する技術です。インターネットが最も主流なネットワークの形態で、TCP/IP・HTTP・DNSなどの様々なプロトコルや、ルータやサーバーなどの様々な機器の上に成り立っています。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

0グッド

0クリップ

投稿2019/09/26 03:09

編集2019/09/26 03:10

0

0

AWSのAPI GatewayでAWS SDK for Androidを生成しました。
Android Studio(3.5)でこのSDKを用いてリクエストして、レスポンスで返された本文を取得したいと思っています。

SDKのApiRequestクラスでリクエストしてApiResponseクラス(詳細)を用いてレスポンスを受け取るといった感じです。

  • ApiResponse.class

java

1package com.amazonaws.mobileconnectors.apigateway; 2 3import com.amazonaws.http.HttpResponse; 4import java.io.IOException; 5import java.io.InputStream; 6import java.util.Map; 7 8public class ApiResponse { 9 private final HttpResponse response; 10 11 ApiResponse(HttpResponse response) { 12 this.response = response; 13 } 14 15 public Map<String, String> getHeaders() { 16 return this.response.getHeaders(); 17 } 18 19 public InputStream getContent() throws IOException { 20 return this.response.getContent(); 21 } 22 23 public InputStream getRawContent() throws IOException { 24 return this.response.getRawContent(); 25 } 26 27 public String getStatusText() { 28 return this.response.getStatusText(); 29 } 30 31 public int getStatusCode() { 32 return this.response.getStatusCode(); 33 } 34} 35

解決したいこと

ApiResponseクラスのgetStatusCode()を用いるとステータスコードは200と正しく返ってくることは確認できていますが、本文(body)を返すメソッドが見当たらないため(HttpResponseのgetBody()のようなもの)どう得られるのかわかりません。
レスポンスで返された本文を取得する方法をご教授ください。

ちなみに、APIにターミナルからcurlすると

{"statusCode": 200, "body": {"......

と返って来ます。この"body": {"......以降が欲しいといった感じです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

AWS は分かりませんが, ざっくり見た限りでは, getContext / getRowContext が本体を返すのではないでしょうか.

投稿2019/09/26 04:01

jimbe

総合スコア13374

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

atta

2019/09/26 04:17

ありがとうございます。期待通り得られました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.30%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問