Я использую https://docs.ngenius-payments.com/reference#hosted -payment-page для оплаты в android
Заголовки: добавьте эти заголовки к вашему запросу (обратите внимание, что вы должны заменить 'your_api_key' на ключ API учетной записи службы в разделе Начало работы).
Значение заголовка Content-Type application / vnd.ni-identity.v1 + json
Основы авторизации c: your_api_key
Тело / данные формы: добавьте следующую информацию к форме / содержанию своего запроса.
Пример запроса (тело): JSON {'realmName': 'ni'}
это заголовки и тип контента, и я создал метод post, используя модификацию
public static Retrofit getRetrofitClient() {
//If condition to ensure we don't create multiple retrofit instances in a single application
if (retrofit == null) {
//Defining the Retrofit using Builder
retrofit = new Retrofit.Builder()
.baseUrl(BASE_URL) //This is the only mandatory call on Builder object.
.addConverterFactory(GsonConverterFactory.create()) // Convertor library used to convert response into POJO
.build();
}
return retrofit;
}
Мой интерфейс API
@POST("identity/auth/access-token")
Call<NgeniusPaymentAccessTokenModel> nGeniusAccessToken(@Header("content-type") String ContentType, @Header("authorization") String apiKey, @Body JsonObject object);
, и я вызываю его по
JsonObject postParam = new JsonObject();
try {
postParam.addProperty("realmName", "ni");
} catch (Exception e) {
e.printStackTrace();
}
Call call = apiService.nGeniusAccessToken(contentType, "Basic "+apiKey, postParam);
я получаю ответ как ошибку, сообщающую о неверном запросе, как решить эту проблему