Модификация POST-запроса Multipart и Field

> https://api.projectoxford.ai/spid/v1.0/identify?identificationProfileIds={identificationProfileIds}[&shortAudio]

Это конечная точка, которую я пытаюсь достичь.

Параметры идентификацииProdileIds ===> Строка

shortAudio ===> логическое значение (необязательно)

Заголовки

API_Key ===> Строка

Content-type ===> String (необязательно)

Пожалуйста, я с трудом пытаюсь понять, как я могу сделать запрос, но он не работает.

Это мой метод интерфейса

@Headers("Ocp-Apim-Subscription-Key: 7615c603bcd644cf8a9cd2d8d6cf73c6")
@Multipart
@POST("identify")
Call<ResponseBody> identifySpeaker (@Part MultipartBody.Part file, @Part("identificationProfileId") RequestBody profileIds);

Этот тип ввода я передам ему позже, когда создам экземпляр

byte[] audioData = prepareAudioData(mRecordFilePath);
    RequestBody requestFile =    RequestBody.create(MediaType.parse("application/octet-stream"), audioData);
    MultipartBody.Part body = MultipartBody.Part.create(requestFile);

RequestBody profiles = RequestBody.create(MediaType.parse("text/plain"), profiles_list);

adapter.identifyProfile(body,profiles).enqueue   and so on....

Раньше у меня был такой запрос POST, и я сделал это успешно, но в этот раз без параметров, но в этой конечной точке я должен применить параметры

Это регистрация модернизации

Запись ответа


person Ahmed Adel    schedule 06.11.2016    source источник


Ответы (1)


Я думаю, вы хотите @Query вместо @Part:

@Headers("Ocp-Apim-Subscription-Key: ...")
@Multipart
@POST("identify")
Call<ResponseBody> identifySpeaker (
    @Part MultipartBody.Part file,
    @Query("identificationProfileId") RequestBody profileIds,
    @Query("shortAudio") boolean shortAudio)
person cthrash    schedule 08.11.2016