این راهنما نحوه عیبیابی مشکلات رایج هنگام استفاده از API گوگل هلث را توضیح میدهد.
خطاهای کلاینت 4xx
کدهای وضعیت 4xx زمانی بازگردانده میشوند که مشکلی در کد برنامه کلاینت وجود داشته باشد. برای اطلاعات بیشتر در مورد مشکل، به عناصر بدنه پاسخ مراجعه کنید.
درخواست بد ۴۰۰
| پیام | توضیحات | توصیه |
|---|---|---|
| درخواست شامل یک آرگومان نامعتبر است. | نوع دادهی ID {value} پشتیبانی نمیشود. | تأیید کنید که نوع داده مورد ارجاع توسط نقطه پایانی پشتیبانی میشود. |
| بار داده JSON نامعتبر دریافت شد. اعداد اکتال/هگز، مقادیر JSON معتبری نیستند. | نقطه پایانی dailyRollUp از مقادیر ماه و روز که به ترتیب با MM یا DD نمایش داده میشوند، پشتیبانی نمیکند. اعداد تک رقمی نباید دارای 0 (صفر) در ابتدای خود باشند. | |
| موکل شما درخواستی نادرست یا غیرقانونی ارائه داده است. | علل احتمالی:
| |
| شماره پروژه نامعتبر در نام منبع | هنگام حذف یا بهروزرسانی مشترک، از شناسه پروژه Google Cloud خود در URL درخواست به جای شماره پروژه استفاده کنید. این امر در مورد اشتراکهای webhook با استفاده از نقطه پایانی projects.subscribers صدق میکند. | از شماره پروژه گوگل کلود خود در URL درخواست استفاده کنید، نه از شناسه پروژه. |
۴۰۱ غیرمجاز
| پیام | توضیحات | توصیه |
|---|---|---|
| درخواست دارای اعتبارنامه احراز هویت نامعتبر بود. توکن دسترسی OAuth 2، کوکی ورود یا سایر اعتبارنامههای احراز هویت معتبر مورد انتظار بود. | INVALID_AUTHENTICATOR: توکن منقضی شده است | توکن دسترسی شما منقضی شده است. از توکن بهروزرسانی برای دریافت توکن دسترسی جدید و توکن بهروزرسانی استفاده کنید، یا کاربر باید دوباره به برنامه رضایت دهد. |
۴۰۳ ممنوعه
| پیام | توضیحات | توصیه |
|---|---|---|
| تماس گیرنده مجوز ندارد | هنگام ایجاد یا فهرست کردن مشترکین، از شناسه پروژه Google Cloud خود در URL درخواست به جای شماره پروژه استفاده کنید. این امر در مورد اشتراکهای وبهوک با استفاده از نقطه پایانی projects.subscribers صدق میکند. | از شماره پروژه گوگل کلود خود در URL درخواست استفاده کنید، نه از شناسه پروژه. |
| تماس گیرنده مجوز ندارد. | نتونستم از GaiaMint، اوبرمینت (UberMint) سکه بزنم. | کاربر توانست جریان مجوز را تکمیل کند، اما فراخوانی نقطه پایانی ناموفق بود. این میتواند زمانی رخ دهد که یک حساب کاربری قدیمی Fitbit به جای یک حساب Google با برنامه موافقت کند. برای رفع این خطا:
|
۴۰۴ یافت نشد
| پیام | توضیحات | توصیه |
|---|---|---|
آدرس اینترنتی درخواستی /v4/users/me/dataTypes/{dataType}/dataPoints در این سرور یافت نشد. | علل احتمالی:
|
بازیابی شناسه کاربری Fitbit
برای کمک به عیبیابی مشکل کاربر، ممکن است لازم باشد حساب گوگل کاربر وارد شده به برنامه تلفن همراه Fitbit را تأیید کنید.
برای پیدا کردن شناسه کاربری Fitbit:
- برنامه موبایل Fitbit را باز کنید.
- روی آیکون «شما» در گوشه پایین سمت راست کلیک کنید.
- روی پیوند ویرایش نمایه در کاشی بالایی که حاوی نام کاربر و تاریخ عضویت است، کلیک کنید.
- به پایین صفحه بروید. در بخش حساب شما ، مقداری که به شناسه اختصاص داده شده است، شناسه کاربری Fitbit است. (برای مثال: CV5TKH)
لغو رضایت برای یک برنامه
هنگام کمک به یک کاربر برای رفع مشکل اتصال OAuth2 خود به برنامه شما، ممکن است از او بخواهید که حساب خود را از برنامه شما جدا کند و سپس دوباره روند احراز هویت را تکمیل کند.
برای لغو اتصال حساب گوگل آنها از برنامه شما:
- برنامه موبایل Fitbit را باز کنید.
- روی آیکون پروفایل کاربری Fitbit در گوشه بالا سمت راست کلیک کنید.
- مدیریت حساب گوگل خود را فشار دهید.
- کاشی «دادهها و حریم خصوصی» را انتخاب کنید.
- به بخش **دادههای برنامهها و سرویسهایی که استفاده میکنید** بروید. در قسمت برنامهها و سرویسها ، برنامهها و سرویسهای شخص ثالث را انتخاب کنید.
- نام برنامه خود را در لیست برنامههای متصل جستجو کنید و از کاربر بخواهید آن را انتخاب کند.
- دکمهی «حذف تمام اتصالاتی که با <app name> دارید» را فشار دهید.
- از کاربر بخواهید برای لغو رضایت از برنامه شما، دکمه تأیید را فشار دهد.
پس از اتمام فرآیند لغو، کاربر به صفحه فهرست برنامهها و سرویسهای شخص ثالث بازگردانده میشود. ممکن است کاربر برای مشاهده حذف نام برنامه از فهرست، نیاز به رفرش صفحه داشته باشد.
عیبیابی تأخیر همگامسازی دستگاه
هنگام اشکالزدایی مشکلات مربوط به دادههای از دست رفته یا تأخیر کاربر، بررسی مدل دستگاه جفتشده کاربر و آخرین تاریخ همگامسازی او مفید است.
اطلاعات مدل (مانند مدل ردیاب Fitbit یا ساعت هوشمند) و تاریخ آخرین همگامسازی برای عیبیابی و بازیابی دادههای تاریخی پس از تأخیرهای همگامسازی مفید هستند.
برای مثال، اگر متوجه یک وقفه یا تأخیر غیرمنتظره در تحویل داده شدید:
- تأیید کنید که شناسه کاربری که جستجو میکنید با شناسه کاربری حساب Fitbit که در برنامه تلفن همراه وارد شده است، مطابقت دارد. برای به دست آوردن شناسه کاربری در برنامه تلفن همراه، به بازیابی شناسه کاربر Fitbit مراجعه کنید. برای به دست آوردن شناسه کاربری از توکن دسترسی، نقطه پایانی
getIdentityرا فراخوانی کنید. - برای تعیین آخرین زمان همگامسازی دستگاه کاربر با برنامه تلفن همراه Google Health، آخرین زمان همگامسازی را بررسی کنید.
- اگر دستگاه اخیراً همگامسازی نشده باشد، نشان میدهد که این تأخیر احتمالاً به دلیل آفلاین بودن دستگاه یا عدم همگامسازی با برنامه تلفن همراه است، نه مشکل API.
- به محض اینکه کاربر برنامه موبایل را باز کرد و دستگاه خود را همگامسازی کرد، میتوانید دادههای تاریخی را برای دوره زمانی از آخرین زمان همگامسازی دریافت کنید.
برای بازیابی اطلاعات دستگاه جفتشدهی کاربر، نقطهی پایانی users.pairedDevices.list را فراخوانی کنید. این دستور لیستی از دستگاههایی را برمیگرداند که شامل موارد زیر هستند:
-
deviceVersion: نام محصول یا مدل دستگاه (برای مثال، "شارژ ۶"). -
lastSyncTime: نشانگر زمان آخرین همگامسازی موفق.