发送 HTTP 请求
发送 HTTP 请求操作可将工作流连接到 Web 服务器或 URL,并发送 HTTP 请求。
Flow 发送 HTTP 请求后,最多等待 30 秒,等待 HTTP 响应代码。如果 Flow 在 30 秒后没有收到回复,它将关闭与应用的连接。稍后,它会重试请求。
字段
发送 HTTP 请求 操作包含以下字段。
字段 | 描述 |
---|---|
HTTP 方法 | 要发送的 HTTP 请求的方法。发送 HTTP 请求 操作支持以下方法:
|
URL | 发送 HTTP 请求的服务器的 URL。 |
标头 | HTTP 请求的键和值对。可以输入多个键值对。 |
正文 | 要发送到服务器的内容。 |
发送 HTTP 请求操作可用于任何工作流。
示例
在此示例中,使用 Flow 向外部服务发送 HTTP 请求。
在开始之前,请执行以下操作:
- 配置接收 HTTP 请求的 Web 服务,并存储这些请求的数据以用于测试,例如 Request Catcher。向第三方服务发送敏感数据(例如密码或 API 密钥)时,请务必谨慎。
然后,在 Flow 中按照以下步骤操作:
- 选择**产品状态已更新**触发器,用于通过更改产品状态来测试此工作流。
- 向工作流中添加发送 HTTP 请求并将其连接到触发器。
- 点击发送 HTTP 请求步骤来打开配置面板。
- 在 HTTP 方法字段中,输入
POST
。 - 在 URL 字段中,输入要测试的 URL,例如
https://shopifyflow.requestcatcher.com/test
。 - 在标头部分,输入一个键为
Content-Type
和值为text/plain
的标头。 - 在正文部分,输入
{{product.title}}
和{{product.status}}
,从而触发系统发送产品的标题和更新状态。 - 激活工作流。
- 通过将产品状态在草稿和活跃之间切换来测试工作流。
- 在外部测试服务中查看结果,例如,在此示例中为
https://shopifyflow.requestcatcher.com/
。
响应代码
下表介绍了 Flow 在收到响应后如何处理 HTTP 响应代码。
HTTP 回复代码 | Flow 处理响应代码的流程 |
---|---|
2XX 或 3XX 成功 | Flow 将 HTTP 请求标记为成功,并随后在工作流中执行操作。 |
429 或 5XX 错误 | Flow 会在最多 24 小时内自动重试此操作,直到它收到其他响应代码或时间过长。 | 其他回复代码 | 如果您的应用返回此表未描述的代码,或在重试操作时出现时间,Flow 会将 HTTP 请求标记为失败。不会执行后续的工作流操作。 |
发送 HTTP 请求操作具有以下限制:
- 此操作不会针对 HTTP 请求返回响应中的任何数据。
模板
针对即将到来的订单通知发货服务商
当订单在订单标注器中被标记为“仓库”时向发货服务商发送 HTTP 请求。查看模板