抓取您的商店
您可以使用 Web Bot Auth 安全地授权您自己的爬虫、脚本或工具访问您的公开 Shopify 在线商店。Web Bot Auth 依赖于 HTTP 消息签名,这些签名在您的 Shopify 后台中生成。您必须在每个请求的 HTTP 标头中包含此签名,以便验证该请求来自已授权的源。
您可以通过自动化的第一方或第三方工具使用签名,这些工具会出于辅助功能和 SEO 审核、自动化测试、数据分析以及类似用例访问您的在线商店。无需签名,您的商店就可以被搜索引擎和大型语言模型 (LLM) 建立索引。
签名功能
签名具有以下功能:
- 安全身份验证:您可以为您的爬虫生成具备加密安全性的签名。
- 到期控制:您可以将签名设置为在特定时间段后到期。最长有效期为 3 个月。
- 集中管理:您可以在一个位置管理和查看所有签名。
- 自定义命名:您可以为每个签名指定自定义名称,以方便识别。
- 域名范围:每个签名均用于特定的域名,该域名必须连接到您的 Shopify 商店。
创建签名的注意事项
在创建和使用签名之前,请查看以下注意事项:
- 使用签名抓取您的商店仅用于分析您的在线店面。由于结账功能具有额外的安全层,签名不会授予对您的 Shopify 结账的访问权限。
- 为您的签名使用清晰的描述性名称。
- 签名会自动过期且无法续订。签名过期后,请创建新签名并更新您的工具。
- 每个签名都用于一个域名,因此您必须指定签名将用于哪个已连接的域名。您只能选择已连接到 Shopify 的域名。
创建签名
您可以直接在 Shopify 后台中创建和管理签名。
在 Shopify 后台中,前往在线商店 > 偏好设置。
在抓取工具访问权限部分,点击创建签名。
在名称字段中,为您的签名输入一个描述性名称。
在域名字段中,选择要将此签名用于的域名。
在有效期部分,为您的签名选择一个有效期。
点击创建。
可选:若要复制您新创建的 Signature-Input 和 Signature 值,请点击每个值旁边的复制。
签名到期后即失效。您无法续订已到期的签名,但可以创建新的签名。
为请求添加签名
您可以复制您的签名,然后将它们添加到您请求的 HTTP 标头中。每个签名均包含 3 个您必须包括的 HTTP 标头。
| 标头名称 | 标头值 |
|---|---|
| Signature-Input | 添加您的签名输入值。 |
| 签名 | 添加您的签名值。 |
| Signature-Agent | Signature-Agent 值是一个字符串,其中包含代理的有效 URI。请将 "https://shopify.com"(含引号)用作此值。 |
有关添加自定义标头的说明,请参阅以下文档:
查看签名
您可以在 Shopify 后台中查看有关您现有签名的以下信息:
- 签名名称
- 关联的域名
- Signature-Input 和 Signature 值的前几个字符
- Signature-Agent 值
- 签名到期日期和状态
在 Shopify 后台中,前往在线商店 > 偏好设置。
在爬虫访问部分,查看有关您签名的信息。
对签名进行故障排除
选择签名问题,然后按照故障排除步骤操作。
对身份验证问题进行故障排除
如果您的抓取工具收到速率限制错误,则表示您的签名无效。请验证以下信息:
- 确认您在 HTTP 标头中使用的是正确的签名格式。
- 确保 Signature-Input、Signature 和 Signature-Agent 标头随每个请求一起发送。
- 验证签名尚未过期。请在 Shopify 后台中查看其到期日期。
- 抓取与签名关联的域名。
恢复丢失的签名
如果您的签名丢失,则可以通过完成以下步骤来恢复:
- 在您的 Shopify 后台中,前往在线商店 > 偏好设置。
- 在抓取工具访问权限部分,在列表中找到您的签名。
- 点击复制以将 Signature-Input、Signature 和 Signature-Agent 的值复制到剪贴板。