اطلاعات موجود در این سند میتواند به عیبیابی مشکلاتی که ممکن است هنگام پیادهسازی پیوند اشتراک با آنها مواجه شوید، کمک کند.
دکمه فراخوان برای لینک اشتراک در صفحه بارگذاری گیر کرده است
مثال خطا:

شکل ۱. دکمه فراخوان برای لینک اشتراک بارگذاری نمیشود.
برای حل این مشکل، موارد زیر را بررسی کنید:
- مطمئن شوید که مبدأ صفحات، شامل زیردامنههای آزمایشی، را به عنوان نشانیهای اینترنتی اضافی در تنظیمات انتشار مرکز ناشران اضافه میکنید.
- مطمئن شوید که وضعیت URL به جای «تأیید»، «تأیید شده» باشد.
- برای پیادهسازیهای Extended Access یا Reader Revenue Manager Enterprise، مطمئن شوید که ریشههای صفحات، از جمله زیردامنههای آزمایشی، را به ریشههای مجاز جاوا اسکریپت OAuth 2.0 Client که برای چنین پیادهسازی پیکربندی کردهاید، اضافه میکنید. این کار باید در Google Cloud Console انجام شود.
حساب کاربری قابل پیوند نبود
مثال خطا:

شکل ۲. مشکل عدم اتصال حساب کاربری
برای حل این مشکل، موارد زیر را بررسی کنید:
- مطمئن شوید که شرایط خدمات مربوط به پیوند اشتراک را در مرکز ناشران پذیرفتهاید. برای انجام این کار، به تنظیمات پیوند اشتراک بروید و روی امضای شرایط خدمات پیوند اشتراک کلیک کنید.
- اگر حساب گوگل قبلاً متصل شده باشد، هنگام تلاش مجدد برای اتصال اشتراک، پیام خطایی دریافت خواهید کرد. قبل از تکرار تست ادغام سمت کلاینت، باید اشتراک را از طریق صفحه اشتراکها در حساب گوگل لغو کنید.
خطای مجوزها هنگام فراخوانی API لینک اشتراک
مثال خطا:
| کد | 403 |
| پیام | 'readerrevenuesubscriptionlinking.readerEntitlements.update' در منبع رد شد. (یا ممکن است وجود نداشته باشد)." |
برای حل این مشکل، موارد زیر را بررسی کنید:
- مطمئن شوید که از همان پروژهای استفاده میکنید که در تنظیمات پیوند اشتراک مشخص شده است. هنگام تنظیم پیوند اشتراک در مرکز ناشران، از شماره پروژه استفاده کنید. میتوانید شماره پروژه را از داشبورد پروژه خود پیدا کنید.
- مطمئن شوید که Subscription Linking API در پروژه شما فعال است.
- در پروژه مدیریت هویت و دسترسی (IAM)، مطمئن شوید که حساب کاربری سرویس با نقشی به عنوان مدیر پیوند اشتراک اعطا شده است. توجه داشته باشید که انتشار تغییر نقش در سیستم ممکن است زمانبر باشد. اگر هنگام فراخوانی API، حتی پس از تأیید اینکه حساب کاربری سرویس شما نقش IAM صحیح را دارد، خطای ۴۰۳ دریافت کردید، چند لحظه صبر کنید و سپس دوباره درخواست خود را امتحان کنید.
اگر مطمئن نیستید که از کدام حسابهای سرویس استفاده کنید یا اینکه آیا نقش IAM لازم را دارند یا خیر، از تحلیلگر سیاست (Policy Analyzer) پروژهای که برای Subscription Linking راهاندازی کردهاید، استفاده کنید. یک پرسوجوی سفارشی با پارامترهای پرسوجوی زیر ایجاد و اجرا کنید:
پارامتر ۱ نقش نقش مدیریت لینکهای اشتراک هنگام فراخوانی Subscription Linking API، مطمئن شوید که از کلید حساب سرویس صحیح استفاده میکنید. ویژگیهای زیر را در کلید حساب سرویس خود (فایل JSON) بررسی کنید:
- نوع: باید service_account باشد.
- project_id: باید شناسه پروژه شماره پروژه مشخص شده در تنظیمات پیوند اشتراک باشد.
- client_email: این باید همان حساب سرویس در IAM پروژه باشد که با نقش Subscription Linking Admin اختصاص داده شده است.
اگر توکن دسترسی را از طریق نقطه پایانی توکن Google OAuth 2.0 (https://oauth2.googleapis.com/token) دریافت کردهاید، هنگام فراخوانی APIهای لینک اشتراک، مطمئن شوید که توکن معتبر است و منقضی نشده است. اگر توکن منقضی شد، باید یک توکن جدید دریافت کنید.
اگر از REST API استفاده میکنید، مطمئن شوید که از شناسه انتشاری که در تنظیمات Subscription Linking ارائه کردهاید، استفاده میکنید. برای مثال، اگر شناسه انتشار شما
example.comاست، URL درخواست باید حاوی آن باشد.- ✅ فقط از شناسهی انتشار پیکربندیشده استفاده کنید:
publications/example.com/readers/10078823/entitlements - ❌ از شناسه انتشار دیگری غیر از شناسه مشخص شده در پیکربندی پیوند اشتراک استفاده نکنید:
publications/example-staging.com/readers/10078823/entitlements - ❌ محصول انتشار را در درخواست ذکر نکنید:
publications/example.com:premium/readers/10078823/entitlements
- ✅ فقط از شناسهی انتشار پیکربندیشده استفاده کنید:
خطای آرگومان نامعتبر هنگام بهروزرسانی حق دسترسی
مثال خطا:
| پیام | خطا: درخواست شامل یک آرگومان نامعتبر است |
برای حل این مشکل، موارد زیر را بررسی کنید:
- مطمئن شوید که شیء
entitlementsرا در قالب صحیح ارائه میدهید. به این مثال مراجعه کنید. - مطمئن شوید که
product_idبه فرمتpublication_id:productباشد.- ✅ مثال معتبر:
"product_id":"example.com:basic" - ❌ مثال نامعتبر:
"product_id":"example.com"
- ✅ مثال معتبر:
عدم نمایش مقالات برجسته در نتایج جستجو
برای حل این مشکل، موارد زیر را بررسی کنید:
- حتماً دادههای ساختاریافته را به تمام مقالات خود اضافه کنید. از تست نتایج غنی (Rich Results Test) برای اعتبارسنجی دادههای ساختاریافته خود استفاده کنید.
- مطمئن شوید که یک
productIDمعتبر در دادههای ساختاریافته قرار میدهید که با مجموعهای از شناسههای محصول که برای بهروزرسانی حق دسترسی خواننده استفاده میکنید، مطابقت دارد. - برای مشاهده هرگونه مشکل مربوط به دادههای ساختاریافته خود، از گزارش نتایج غنی برای «محتوای مشترک» در کنسول جستجو استفاده کنید.
نمیتوان زبان پیام فراخوان عمل پیوند اشتراک را تغییر داد

زبان فراخوانی برای اقدام در لینک اشتراک توسط تنظیمات کاربر تعیین میشود. این زبان را نمیتوان به صورت سراسری تغییر داد.
زبان به شرح زیر تعیین میشود:
اگر کاربر با حساب گوگل خود وارد سیستم شده باشد، زبان اصلی تنظیم شده در تنظیمات حساب گوگل او ( https://myaccount.google.com/language ) استفاده میشود.
اگر کاربر وارد سیستم نشده باشد، زبان بر اساس تنظیمات زبان اصلی مرورگر یا سیستم عامل او تنظیم میشود.
فراخوانهای لینکدهی اشتراک از همه زبانها پشتیبانی نمیکنند. اگر زبان اصلی کاربر پشتیبانی نشود، ممکن است فراخوان به اقدام به صورت پیشفرض به انگلیسی باشد.