#uipath #uipath-robot
#uipath #uipath-робот
Вопрос:
Мы столкнулись с недавно возникшей проблемой с UiPath. Это усечение строк, в нашем случае изображения в кодировке base 64, в 10 тыс. символов. Кто-нибудь знает, почему это может происходить, и как мы можем это решить?
Усечение, по-видимому, происходит при загрузке текстовой переменной base64Contents. Видно на фотографии ниже.
base64Contents = Преобразовать.ToBase64String(ByteArray);
Ответ №1:
Согласно документации UiPath, существует ограничение в 10 000 символов. Это связано с 'the default communication channel between the Robot Executor and the Robot Service has changed from WCF to IPC'
https://docs.uipath.com/activities/docs/log-message
Потенциальное решение
Обходным путем может быть запись вашей строки в текстовый файл, а не вывод ее в виде журнала. таким образом, вы используете другое действие, и ограничение в 10 000 символов может не применяться.
Комментарии:
1. Спасибо за ваш ответ. Однако проблема не в журнале, а в том, что мы сохраняем строку 64 байта в текстовую переменную, а затем пытаемся отправить строку в API и получаем только 10 тыс. символов строки 64 байта. Документы для текстовой переменной, похоже, не указывают, каков предел, можете ли вы подтвердить, что изменение IPC также влияет на это? docs.uipath.com/studio/docs/text-variables
2. Не могли бы вы дополнить свой вопрос более подробной информацией о действиях, которые вы используете в своей последовательности? Есть несколько моментов, которые вы могли бы проверить. Проблема с UiPath, например, что-то не так с получением / вычислением строки, проблема с отправкой строки в API? получает ли API это и усекает ли его?
3. Отличные мысли, похоже, это происходит при преобразовании при установке переменной с помощью Convert . ToBase64String(ByteArray).
4. Так он просто возвращает первые 10000 символов после запуска
Convert.ToBase64String(byteArray)
? также какой тип данных вы сохраняетеbase64Contents
как?