【问题标题】:UIPath truncating strings at 10k (10,000) charactersUIPath 在 10k (10,000) 个字符处截断字符串
【发布时间】:2020-12-15 21:52:35
【问题描述】:

我们遇到了最近启动的 UIPath 问题。它截断了字符串,在我们的例子中是 10k 个字符的 base 64 编码图像。有谁知道为什么会发生这种情况,以及我们如何解决它?

加载文本变量 base64Contents 时似乎发生了截断。如下图所示。

base64Contents = Convert.ToBase64String(byteArray);

【问题讨论】:

    标签: uipath uipath-robot


    【解决方案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

    潜在解决方案

    解决此问题的一种方法是将您的字符串写入 txt 文件,而不是将其作为日志输出。这样您就可以使用不同的活动,并且 10,000 个字符的限制可能不适用。

    【讨论】:

    • 感谢您的回复。问题不在于日志,而是当我们将字节 64 字符串保存到文本变量中,然后尝试将字符串发布到 API 并仅获取字节 64 字符串的 10k 个字符时。文本变量的文档似乎没有说明限制是什么,您能否确认对 IPC 的更改也对此产生了影响? docs.uipath.com/studio/docs/text-variables
    • 您能否更新您的问题,详细说明您在序列中使用的活动?您可以检查几点。 UiPath 是否存在问题,例如获取/计算字符串有问题,是否有问题将字符串发送到 API? API 是否接收并截断它?
    • 好主意,当使用 Convert.ToBase64String(byteArray) 设置变量时,它似乎发生在转换上。
    • 那么在您运行Convert.ToBase64String(byteArray) 之后它是否只返回前10000 个字符?还有你将base64Contents 存储为什么数据类型?
    猜你喜欢
    • 2013-11-17
    • 1970-01-01
    • 2010-11-25
    • 1970-01-01
    • 1970-01-01
    • 2014-07-14
    • 1970-01-01
    • 2014-09-14
    相关资源
    最近更新 更多