Доступ к API-шлюзу в Android Studio - PullRequest
0 голосов
/ 16 марта 2019

Я использую android studio для разработки своего мобильного приложения, и в настоящее время я могу загружать и скачивать файл из своей корзины S3, следуя этому руководству , и теперь я хотел бы получить доступ к одному из моихapi-gateway, этот api-gateway предназначен для вызова моей лямбда-функции Python, и я также хочу, чтобы мое приложение возвращало некоторую полезную информацию, как я могу настроить вышеуказанную настройку на моей андроид-студии (я использую Android Studio 3.1.4и мой телефон работает под управлением Android 8.0)

1 Ответ

0 голосов
/ 24 марта 2019

Таким образом, используя HttpUrlConnection, вы можете использовать следующий код, чтобы поразить ваш API с помощью тела json. При этом мы делаем почтовый запрос и отправляем JSON через то, что вы ему даете.

public static String SendGet(String testevent, String testeventthing2) throws Exception {

    System.out.println("SENDGET");
    final String USER_AGENT = "Mozilla/5.0";
    String url = "https://yourapiblah.execute-api.us-east-1.amazonaws.com/dev/";
    String json = "{\"testevent\":\"" + testevent + "\",\"testeventthing2\":\"" + testeventthing2 + "\"}";
    System.out.println("JSON: " + json);
    URL obj = new URL(url);
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    con.setRequestProperty("User-Agent", USER_AGENT);
    con.setRequestProperty("Content-Type", "application/json; charset=UTF-8");
    con.setDoOutput(true);
    con.setDoInput(true);
    con.setRequestMethod("POST");

    OutputStream os = con.getOutputStream();
    os.write(json.getBytes(StandardCharsets.UTF_8));
    os.close();

    int responseCode = con.getResponseCode();
    System.out.println("\nSending 'POST' request to URL : " + url);
    System.out.println("Response Code : " + responseCode);

    BufferedReader in = new BufferedReader(
            new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();

    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();

    return String.valueOf(response);

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...