Каков правильный формат для поля API SurveyQuestionImage.Data?

Я работаю с GCS API, пытаясь создать опрос с данными изображения.

Я использую пакет NuGet Google.Apis.ConsumerSurveys.v2 версии 1.14.0.564 на платформе .Net. Я могу создавать опросы, которые не содержат данных изображений без проблем. Однако, когда я пытаюсь создать опрос с данными изображения, я получаю сообщение об ошибке от API.

У меня есть под рукой base64 закодированные данные в формате png. Мои изображения правильно отображаются в теге IMG на веб-странице, если для атрибута src установлено значение

'data:image/png;base64,<image base64 string>'  

Я хочу отправить данные этого изображения в API для заполнения изображения опроса. Насколько я понимаю, мне нужно установить свойство Data объекта Google.Apis.ConsumerSurveys.v2.Data.SurveyQuestionImage в строку, содержащую данные изображения. Я не был успешным.

Сначала я декодирую строку base64 в байтовый массив:

byte[] bytes = Convert.FromBase64String(<image base64 string>);

Я попытался установить свойство Data в объекте SurveyQuestionImage как:

image.Data = Encoding.Unicode.GetString(bytes);

Это приводит к этой ошибке из API:

Google.Apis.Requests.RequestError Invalid value for ByteString: <the Data string>

Я также попытался преобразовать массив байтов в шестнадцатеричную закодированную строку как:

StringBuilder sb = new StringBuilder(bytes.Length);
foreach (Byte b in bytes)
{
  sb.Append(b.ToString("X2"));
}
image.Data = sb.ToString();

Это приводит к более обнадеживающей ошибке:

Google.Apis.Requests.RequestError Invalid Value supplied to API: image_data was bad. Request Id: 579665c300ff05e6c316a09e600001737e3430322d747269616c320001707573682d30372d32322d72313000010112 [400] Errors [ Message[Invalid Value supplied to API: image_data was bad. Request Id: 579665c300ff05e6c316a09e600001737e3430322d747269616c320001707573682d30372d32322d72313000010112] Location[ - ] Reason[INVALID_VALUE] Domain[global] ] 

Кто-нибудь знает правильный формат дляData собственностьGoogle.Apis.ConsumerSurveys.v2.Data.SurveyQuestionImage объект?

Ответы на вопрос(1)

Ваш ответ на вопрос