1.2.2在Workfront Fusion中使用Adobe API
了解如何在Workfront Fusion中使用Adobe API。
1.2.2.1使用Firefly文本通过Workfront Fusion对API进行成像
将鼠标悬停在第二个 设置多个变量 节点上,并选择 + 以添加另一个模块。
搜索 http 并选择 HTTP。
选择 发出请求。
选择以下变量:
- URL:
https://firefly-api.adobe.io/v3/images/generate
- 方法:
POST
选择 添加标头。
输入以下标题:
x-api-key
CONST_client_id
存储的变量Authorization
Bearer
+您为bearer_token
存储的变量Content-Type
application/json
Accept
*/*
输入x-api-key
的详细信息。 选择 添加。
选择 添加标头。
输入Authorization
的详细信息。 选择 添加。
选择 添加标头。 输入Content-Type
的详细信息。 选择 添加。
选择 添加标头。 输入Accept
的详细信息。 选择 添加。
将 Body类型 设置为 Raw。 对于 内容类型,请选择 JSON (application/json)。
将此有效负载粘贴到 请求内容 字段中。
{
"numVariations": 1,
"size": {
"width": 2048,
"height": 2048
},
"prompt": "Horses in a field",
"promptBiasingLocaleCode": "en-US"
}
选中 分析响应 的框。 选择 确定。
选择 运行一次。
您的屏幕应如下所示。
选择 ?第四个节点HTTP上的 图标以查看响应。 您应该会在响应中看到图像文件。
复制图像URL并在浏览器窗口中将其打开。 屏幕应如下所示:
右键单击 HTTP 并将它重命名为 Firefly T2I。
选择 保存 以保存更改。
1.2.2.2将Photoshop API与Workfront Fusion一起使用
在节点 设置持有者令牌 和 Firefly T2I 之间选择 扳手。 选择 添加路由器。
右键单击 FireflyT2I 对象并选择 克隆。
将克隆的对象拖放到 路由器 对象附近,该对象会自动连接到 路由器。 屏幕应如下所示:
您现在拥有基于 Firefly T2I HTTP请求的相同副本。 Firefly T2I HTTP请求的某些设置类似于与 Photoshop API 交互所需的设置,后者是一个省时工具。 现在,您只需更改不相同的变量即可,例如请求URL和有效负载。
将 URL 更改为https://image.adobe.io/pie/psdService/text
。
使用以下有效负载替换 请求内容:
{
"inputs": [
{
"storage": "external",
"href": "{{AZURE_STORAGE_URL}}/{{AZURE_STORAGE_CONTAINER}}/citisignal-fiber.psd{{AZURE_STORAGE_SAS_READ}}"
}
],
"options": {
"layers": [
{
"name": "2048x2048-button-text",
"text": {
"content": "Click here"
}
},
{
"name": "2048x2048-cta",
"text": {
"content": "Buy this stuff"
}
}
]
},
"outputs": [
{
"storage": "azure",
"href": "{{AZURE_STORAGE_URL}}/{{AZURE_STORAGE_CONTAINER}}/citisignal-fiber-changed-text.psd{{AZURE_STORAGE_SAS_WRITE}}",
"type": "vnd.adobe.photoshop",
"overwrite": true
}
]
}
为了使此 请求内容 正常工作,缺少一些变量:
AZURE_STORAGE_URL
AZURE_STORAGE_CONTAINER
AZURE_STORAGE_SAS_READ
AZURE_STORAGE_SAS_WRITE
返回第一个节点,选择 初始化常量,然后为每个变量选择 添加项。
AZURE_STORAGE_URL
https://vangeluw.blob.core.windows.net
AZURE_STORAGE_CONTAINER
vangeluw
AZURE_STORAGE_SAS_READ
?sv=2023-01-03&st=2025-01-13T07%3A36%3A35Z&se=2026-01-14T07%3A36%3A00Z&sr=c&sp=rl&sig=4r%2FcSJLlt%2BSt9HdFdN0VzWURxRK6UqhB8TEvbWkmAag%3D
AZURE_STORAGE_SAS_WRITE
?sv=2023-01-03&st=2025-01-13T17%3A21%3A09Z&se=2025-01-14T17%3A21%3A09Z&sr=c&sp=racwl&sig=FD4m0YyyqUj%2B5T8YyTFJDi55RiTDC9xKtLTgW0CShps%3D
您可以通过返回Postman并打开 环境变量 来查找变量。
将这些值复制到Workfront Fusion,并为这4个变量中的每一个添加新项。
您的屏幕应如下所示。 选择 确定。
接下来,返回克隆的HTTP请求以更新 请求内容。 请注意 请求内容 中的黑色变量,它们是从Postman复制的变量。 您需要更改为您刚刚在Workfront Fusion中定义的变量。 通过删除黑色文本并用正确的变量替换它,逐一替换每个变量。
在 输入 部分中进行这3项更改。 选择 确定。
在 输出 节中进行这3项更改。 选择 确定。
右键单击克隆的节点,然后选择 重命名。 将名称更改为 Photoshop更改文本。
屏幕应如下所示:
选择 运行一次。
选择 Photoshop更改文本 节点上的 搜索 图标以查看响应。 您应该具有类似于这样的响应,其中包含指向状态文件的链接。
在继续Photoshop API交互之前,请禁用到 Firefly T2I 节点的路由,以免向该API端点发送不需要的API调用。 选择 扳手 图标,然后选择 禁用路由。
屏幕应如下所示:
接下来,添加另一个 设置多个变量 节点。
将其放置在 Photoshop更改文本 节点之后。
选择 设置多个变量 节点,选择 添加项。 从上一个请求的响应中选择变量值。
psdStatusUrl
data > _links > self > href
选择 添加。
选择 确定。
右键单击 Photoshop更改文本 节点,然后选择 克隆。
将克隆的HTTP请求拖到刚刚创建的 设置多个变量 节点之后。
右键单击克隆的HTTP请求,选择 重命名 并将名称更改为 Photoshop检查状态。
选择以打开HTTP请求。 更改URL以使其引用您在上一步中创建的变量,并将 方法 设置为 GET。
通过选择空选项删除 正文。
选择 确定。
选择 运行一次。
出现包含字段 status,且状态设置为 正在运行 的响应。 Photoshop需要几秒钟才能完成此过程。
现在您知道该响应还需要一段时间才能完成,因此最好在此HTTP请求前面添加计时器,以便它不会立即运行。
选择 工具 节点,然后选择 休眠。
将 休眠 节点放置在 设置多个变量 和 Photoshop检查状态 之间。 将 延迟 设置为 5 秒。 选择 确定。
您的屏幕应如下所示。 以下配置的挑战是,等待5秒可能足够了,但可能还不够。 实际上,最好有一个更智能的解决方案,如do…while循环,每5秒检查一次状态,直到状态等于 succeeded。 因此,您可以在后续步骤中实施此类策略。
选择介于 设置多个变量 和 睡眠 之间的 扳手 图标。 选择 添加模块。
搜索flow
,然后选择 流量控制。
选择 中继器。
将 重复 设置为 20。 选择 确定。
接下来,在 Photoshop检查状态 上选择 + 以添加另一个模块。
搜索 流 并选择 流控制。
选择 数组汇总。
将 Source模块 设置为 中继器。 选择 确定。
屏幕应如下所示:
选择 扳手 图标并选择 添加模块。
搜索 工具 并选择 工具。
选择 获取多个变量。
选择 +添加项 并将 变量名称 设置为done
。
选择 确定。
选择您之前配置的 设置多个变量 节点。 为了初始化变量 done,您需要在此处将其设置为false
。 选择 +添加项。
将done
用于 变量名称
要设置状态,需要一个布尔值。 要查找布尔值,请选择 齿轮,然后选择false
。 选择 添加。
选择 确定。
接下来,在您配置的 获取多个变量 节点之后选择 扳手 图标。
选择 设置筛选器。 您现在需要检查变量 done 的值。 如果该值设置为 false,则必须执行循环的下一部分。 如果值设置为 true,则表示进程已成功完成,因此无需继续循环的下一部分。
对于标签,请使用 我们完成了吗? 的问题。使用现有变量 done 设置 Condition,运算符应设置为 等于,值应为布尔变量false
。 选择 确定。
接下来,在节点 Photoshop检查状态 和 数组聚合器 之间腾出一些空间。 然后,选择 扳手 图标并选择 添加路由器。 您这样做是因为在检查Photoshop文件的状态后,应该有2条路径。 如果状态为succeeded
,则 done 的变量应设置为true
。 如果状态不等于succeeded
,则循环应继续。 路由器将可以检查并设置此项。
添加路由器后,选择 扳手 图标,然后选择 设置过滤器。
对于标签,请使用 我们已完成。 通过选择响应字段 data.outputs[].status 来使用 Photoshop检查状态 节点的响应设置 条件,运算符应设置为 等于,值应为succeeded
。 选择 确定。
接下来,选择带有问号的空节点并搜索 工具。 然后选择 工具。
选择 设置多个变量。
使用路由器的此分支时,表示Photoshop文件创建的状态已成功完成。 这意味着do…while循环不再需要继续检查Photoshop中的状态,因此应将变量done
设置为true
。
对于 变量名称,请使用done
。
对于 变量值,应使用布尔值true
。 选择 齿轮 图标,然后选择true
。 选择 添加。
选择 确定。
接下来,右键单击刚刚创建的 设置多个变量 节点,然后选择 克隆。
拖动克隆的节点,使其与 数组聚合器 连接。 然后,右键单击该节点并选择 重命名,然后将其名称更改为Placeholder End
。
删除现有变量并选择 +添加项。 对于 变量名称,请使用placeholder
;对于 变量值,请使用end
。 选择 添加,然后选择 确定。
选择 保存 以保存您的方案。 接下来,选择 运行一次。
随后将执行场景,并成功完成。 请注意,您配置的do…while循环工作正常。 在下面的运行中,您可以看到根据 工具>获取多个变量 节点上的气泡,中继器 运行了20次。 在该节点之后,您配置了一个用于检查状态的过滤器,并且仅当状态不等于 succeeded 时,才会执行后续节点。 在此运行中,筛选器之后的部分仅运行一次,因为在第一次运行中状态已经是 成功。
您可以通过单击 Photoshop检查状态 HTTP请求上的气泡并细化到 状态 字段,来验证新Photoshop文件创建状态。
您现在已配置可重复方案的基本版本,可自动执行一些步骤。 在下一个练习中,您将通过增加复杂性来迭代这一点。