本文档中的信息可以帮助您排查在实现订阅关联时可能遇到的问题。
加载界面上卡住了订阅关联提示
错误示例:
图 1. 无法加载订阅关联提示。
如需解决此问题,请检查以下各项:
- 请务必在发布商中心的发布设置中将网页的来源(包括测试子网域)添加为其他网址。
- 对于扩展访问权限或读者收益管理工具企业版实现,请务必将页面的来源(包括测试子网域)添加到您为此类实现配置的 OAuth 2.0 客户端的已获授权的 JavaScript 来源中。此操作需要在 Google Cloud 控制台中完成。
无法关联账号
错误示例:
图 2. 无法关联账号的问题。
如需解决此问题,请检查以下各项:
- 确保在发布商中心接受订阅关联的服务条款。为此,请转到订阅关联设置,然后点击签署订阅关联服务条款。
- 如果 Google 账号已关联,您会在重新尝试关联订阅时收到错误消息。在重复客户端集成测试之前,您必须通过 Google 帐号中的订阅页面取消关联订阅。
调用 Subscription Linking API 时出现权限错误
错误示例:
代码 | 403
|
消息 | 对资源 的 'readerrevenuesubscriptionlinking.readerEntitlements.update' 遭拒(或者该资源可能不存在)。 |
如需解决此问题,请检查以下各项:
- 请务必使用订阅关联设置中指定的同一项目。在发布商中心内设置订阅关联时,请使用项目编号。您可以从项目信息中心找到相应的项目编号。
- 确保您的项目中启用了 Subscription Linking API。
- 在项目 Identity and Access Management (IAM) 中,确保已向服务帐号授予 Subscription Linking Admin 这一角色。请注意,角色更改可能需要一段时间才能在整个系统中传播。如果您在进行 API 调用时收到 403 错误,即使在已确认您的服务帐号具有正确的 IAM 角色后,请等待片刻,然后重新尝试您的请求。
如果您不确定要使用哪些服务帐号,或者不确定它们是否具有必要的 IAM 角色,请使用您为订阅关联设置的项目中的 Policy Analyzer。使用以下查询参数创建并运行自定义查询:
参数 1 角色 角色 订阅关联管理员 请确保在调用 Subscription Linking API 时使用正确的服务帐号密钥。检查服务帐号密钥(JSON 文件)中的以下属性:
- type:必须是 service_account。
- project_id::必须是订阅关联设置中指定的project_id:的project_id:。
- client_email::必须与项目 IAM 中分配了 client_email: 角色的服务帐号相同。
如果您通过 Google OAuth 2.0 令牌端点 (https://oauth2.googleapis.com/token) 获取了访问令牌,请确保在调用 Subscription Linking API 时该令牌有效且未过期。如果令牌过期,您必须获取新令牌。
如果您使用 REST API,请务必使用您在订阅关联设置中提供的发布内容 ID。例如,如果您的发布内容 ID 为
example.com
,则请求网址必须包含该 ID。- ✅ 仅使用配置的发布内容 ID:
publications/example.com/readers/10078823/entitlements
- ❌ 请勿使用订阅关联配置中指定的发布内容 ID:
publications/example-staging.com/readers/10078823/entitlements
- ❌ 请勿在请求中添加出版物商品:
publications/example.com:premium/readers/10078823/entitlements
- ✅ 仅使用配置的发布内容 ID:
更新使用权时出现参数无效错误
错误示例:
消息 | 错误:请求中包含无效的参数 |
如需解决此问题,请检查以下各项:
- 请务必以正确的格式提供
entitlements
对象。请参阅此示例。 - 确保
product_id
采用publication_id:product
格式。- ✅ 有效示例:
"product_id":"example.com:basic"
- ❌ 无效示例:
"product_id":"example.com"
- ✅ 有效示例:
未在搜索结果中看到突出显示的文章
如需解决此问题,请检查以下各项: