【问题标题】:Best way to pass lengthy parameter to a Work Item将冗长参数传递给工作项的最佳方法
【发布时间】:2021-05-24 21:38:07
【问题描述】:

我想通过 DesignAutomation API 生成 Revit 文件,预填充来自外部数据源的类型和图层。

源可以包含 +10k 类型,我想知道将这些数据提供给工作项的最佳方法是什么。 我可以在处理时间或大小方面遇到限制吗? 如何估算此类流程的云信用成本?

如果我将它上传到存储桶,插件代码可以访问它吗?有没有这样使用 Bucket 的例子?

如有必要,我也可以将其构建到插件代码中,但想避免这种情况。

任何提示表示赞赏。

更新: 所以我无法找到将冗长的 json 文件本身包含在初始工作项请求中的方法,我必须创建一个 Web 服务来提供一个端点,Forge 可以从该端点下载 json 文件。

【问题讨论】:

    标签: autodesk-forge autodesk-designautomation


    【解决方案1】:

    我可以在处理时间或大小方面遇到限制吗?如何估算此类流程的云信用成本?

    您正在寻找的可能在这里 - service limits。您可能会遇到处理时间的限制,但由于 limitProcessingTimeSec 包含工作项的下载和上传时间,如果遇到问题,您可以更改此值。

    源可以包含 +10k 类型,我想知道将这些数据提供给工作项的最佳方法是什么。

    如果您想在作业开始时下载 WorkItem 的额外信息,您可以将其捆绑在一个 zip 文件中,然后由服务解压缩。如果您正在寻找特定配额以确保不会超出,您可以查看quota limit here

    如果我将它上传到存储桶,插件代码可以访问它吗?有没有这样使用 Bucket 的例子?

    如果您想在作业运行时访问外部文件,您可以查看onDemand input here

    【讨论】:

    • 谢谢!您能否详细说明一下:“在工作开始时下载 WorkItem 的额外信息,您可以将其捆绑在一个 zip 文件中,然后由服务解压缩”?我能找到一个如何做到这一点的例子吗?打包是如何完成的,插件在哪里可以访问它?我的数据在这个过程中是不变的,并且在开始时就知道了,只需要在插件中对其进行迭代。
    • @bitwise,你可以在Body Structure->arguments->*->XrefTreeArgument->pathInZip 找到 zip 的用法。您需要为活动中的此输入提供一个本地名称并定义zip==true。 Design Automation 会将 zip 文件解压缩到当前工作文件夹下名为本地名称的文件夹中,您可以在插件中访问该文件夹
    【解决方案2】:

    完全同意阿什温。

    此外,这里还讨论了DA4R Input and Output Files 的其他方面。

    【讨论】:

    • 谢谢,我看到它将数据作为 POST 参数进行通信。我可以利用 POST 正文理论上可用的全部 2GB,或者这里的大小限制是多少?我假设我的数据将是 JSON 格式的 10 MB。
    • 有效负载限制为 16 KB。如果 JSON 文件的输入很大,您可能需要先将其保存在某个云存储中,并提供其 URL 作为输入。 Design Automation 将下载此 json 文件
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-26
    • 2015-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多