AndroidでRetrofitを使用して文字列配列をサーバーに送信する方法


方法1: パラメーターとして文字列配列を送信する Retrofitのリクエストメソッドに文字列配列をパラメーターとして渡すことができます。以下はその例です。

  1. リクエストメソッドを定義します。

    @POST("endpoint")
    Call<ResponseBody> sendStringArray(@Body String[] strings);
  2. リクエストを作成して送信します。

    String[] stringArray = {"string1", "string2", "string3"};
    Call<ResponseBody> call = apiService.sendStringArray(stringArray);
    call.enqueue(new Callback<ResponseBody>() {
    @Override
    public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
        // レスポンスの処理
    }
    @Override
    public void onFailure(Call<ResponseBody> call, Throwable t) {
        // エラーハンドリング
    }
    });

方法2: JSONで文字列配列を送信する もう一つの方法は、文字列配列をJSON形式でリクエストボディに含めることです。以下はその例です。

  1. リクエストボディを定義します。

    class StringArrayRequestBody {
    @SerializedName("strings")
    private String[] strings;
    public StringArrayRequestBody(String[] strings) {
        this.strings = strings;
    }
    }
  2. リクエストメソッドを定義します。

    @POST("endpoint")
    Call<ResponseBody> sendStringArray(@Body StringArrayRequestBody requestBody);
  3. リクエストを作成して送信します。

    String[] stringArray = {"string1", "string2", "string3"};
    StringArrayRequestBody requestBody = new StringArrayRequestBody(stringArray);
    Call<ResponseBody> call = apiService.sendStringArray(requestBody);
    call.enqueue(new Callback<ResponseBody>() {
    @Override
    public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
        // レスポンスの処理
    }
    @Override
    public void onFailure(Call<ResponseBody> call, Throwable t) {
        // エラーハンドリング
    }
    });

以上が、AndroidでRetrofitを使用して文字列配列をサーバーに送信する方法の例です。適切なエンドポイントを使用し、必要に応じて認証やその他の設定を行ってください。