有没有办法将对象从存储桶复制到 Revit Design Automation 本地路径?
Posted
技术标签:
【中文标题】有没有办法将对象从存储桶复制到 Revit Design Automation 本地路径?【英文标题】:Is there a way to copy an object from a bucket to the Revit Design Automation local path? 【发布时间】:2021-12-28 22:44:28 【问题描述】:我创建了一个如下所示的存储桶(Python):
payload = 'bucketKey' : bucketname,'policyKey' : 'transient'
resp = requests.post(Forge_BASE_URL+'/oss/v2/buckets', headers='Authorization': config.token,'Content-Type':'application/json',json=payload)
然后将文件上传到创建的bucket中:
url = 'https://developer.api.autodesk.com/oss/v2/buckets/'+bucketname+'/objects/'+encodedfilename
resp = requests.put(url, headers='Authorization': config.token,'Content-Type' : 'application/octet-stream','Content-Length' : str(filesize),data= open(modelfilePath + filename, 'rb'))
如何将存储桶中的对象下载到 Revit Design Automation 引擎的本地路径?
Revit Design Automation 引擎的本地路径类似于 C# 代码中使用的 T:\Aces\Jobs\job_id
。
感谢curl
命令或 Python 代码。
【问题讨论】:
【参考方案1】:实际上,Design Automation 服务负责从提供的(可读)URL 下载所有输入,在安全的沙盒环境中运行您的活动,然后将所有输出上传到提供的(可写)URL。
如果您的输入文件位于 Forge 数据管理存储桶中,您可以为其获取一个临时的 signed URL,并将其用作活动输入的 URL。您还可以创建 可写 签名的 URL,然后设计自动化活动可以将结果上传到该 URL。有关详细信息,请参阅此blog post。
【讨论】:
以上是关于有没有办法将对象从存储桶复制到 Revit Design Automation 本地路径?的主要内容,如果未能解决你的问题,请参考以下文章
使用 Node 将文件从一个 AWS S3 存储桶复制到另一个存储桶