أدوات لتحديد وحلّ المشاكل في Shared Storage API
تصحيح أخطاء Shared Storage Worklet باستخدام "أدوات مطوّري البرامج"
لفحص worklet في "مساحة التخزين المشترَكة" تم بدء تشغيله من الصفحة التي تتصفّحها، يمكنك الانتقال إلى علامة التبويب "المصادر" في لوحة "أدوات المطوّرين"، وإضافة نقطة توقّف مستمع الحدث "Shared Storage Worklet / Script First Statement". سيؤدي نقطة الإيقاف هذه إلى إيقاف تنفيذ البرنامج النصي للوحدة الأولية أو العمليات القصيرة الأمد في Worklet عند بدء التشغيل.
بالإضافة إلى ذلك، تعرض صفحة chrome://inspect/#shared-storage-worklets جميع عمليّات Shared Storage النشطة من جميع الصفحات.
تصحيح أخطاء Shared Storage وPrivate Aggregation
لتفعيل تصحيح الأخطاء، استدعِ طريقة enableDebugMode() JavaScript في السياق نفسه الذي يتم فيه استخدام ميزة "مساحة التخزين المشتركة" و"التجميع الخاص". سيتم تطبيق ذلك على التقارير المستقبلية في السياق نفسه.
privateAggregation.enableDebugMode();
لربط التقارير بالسياقات التي أدّت إلى ظهورها، يمكنك ضبط مفتاح تصحيح أخطاء غير موقّع بعدد صحيح يبلغ 64 بت يتم تمريره إلى طلب JavaScript. debugKey هو BigInt.
privateAggregation.enableDebugMode({debugKey: 1234});
تصحيح أخطاء Shared Storage API
تعرض Shared Storage رسالة خطأ عامة:
Promise is rejected without and explicit error message
يمكنك تصحيح أخطاء Shared Storage من خلال تضمين عمليات الاستدعاء في كتل try-catch.
try {
privateAggregation.contributeToHistogram({bucket, value});
} catch (e){
console.log(e);
}
تصحيح أخطاء Private Aggregation
يتم إرسال التقارير إلى /.well-known/private-aggregation/report-shared-storage و/.well-known/private-aggregation/debug/report-shared-storage. تتلقّى تقارير تصحيح الأخطاء حمولة مشابهة لملف JSON التالي. يحدّد هذا الحمولة حقل api
على أنّه "مساحة تخزين مشترَكة".
{
"aggregation_coordinator_origin": "https://publickeyservice.msmt.gcp.privacysandboxservices.com",
"aggregation_service_payloads": [ {
"debug_cleartext_payload": "omRkYXRhlKJldmFsdWVEAAAAgGZidWNrZXRQAAAAAAAAAAAAAAAAB1vNFaJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAGlvcGVyYXRpb25paGlzdG9ncmFt",
"key_id": "1569ab37-da44-4a26-80d9-5ed6524ab2a7",
"payload": "/9nHrWn1MnJWRxFvanbubciWE9mPyIij6uYLi5k351eQCd3/TZpe2knaatUNcniq4a4e61tmKebv50OmMRZFnnCfcAwIdIgLHu1a3en97PojqWJBfO52RiVMIcP7KQTLzMxq2LhvPSdV4zjXo1Teu/JuIK3LIyis3vUMpS+tUAX0QV+I6X5SVmZFiNW9aMb8DwLOtqrBy5JJ/EkOIY0G+1Fi1/3R7UtKsqM1o71A/OzdmlNkwO7EV/VUNinGvWnd19FvDHe/kqkNdTHKbhAnMmbZzHW9bsEQS81leElCla6BTdbdbeeFU/jbTj0AOaoNOIe5r7FU5NG6nW4ULXTCbLLjTQ1mtl3id3IP41Zin1JvABCDC/HUSgLFz8EUqkmbMIOlMfNYA79aURq6FqE0GO0HtICYf0GPNdVv7p4jY3FNn6+JS4l5F3t+3lP9ceo4IpCE+31jzMtYJ+19xFh6C5ufteBR/iknZFcc1w3caQBhgRl5jt8DbaOzYcW4690H8Ul4Oh2wRO+6/njifk+pExLay/O5swLi2lUUph5OUEaaztwwzh2mnhwIBxMkPnfsGihiF+5KDEajVfMZ3NLsIDoZO+l4RTZrkqE+jVkAqaZGBiCIx42Edp/JV0DXfrryypCdQBZr8iEbSzCM9hKsMfLN7S/VkPe5rDwOZbhKCn5XXgfGz5tSx/KbZgsQf4OCEhwAyNPHAh3MHU7xmkQ3pKg4EIUC/WOtKAlVDOtDMmPPoQY1eAwJhw9SxZaYF1kHjUkTm3EnGhgXgOwCRWqeboNenSFaCyp6DbFNI3+ImONMi2oswrrZO+54Tyhca5mnLIiInI+C3SlP4Sv1jFECIUdf/mifJRM5hMj6OChzHf4sEifjqtD4A30c4OzGexWarie2xakdQej9Go4Lm0GZEDBfcAdWLT9HwmpeI2u4HDAblXDvLN8jYFDOOtzOl90oU7AwdhkumUCFLRadXAccXW9SvLfDswRkXMffMJLFqkRKVE1GPonFFtlzaRqp7IgE8L6AOtz6NDcxAjHnEuzDPPMcWMl1AFH0gq7h"
} ],
"debug_key": "1234",
"shared_info": "{\"api\":\"shared-storage\",\"debug_mode\":\"enabled\",\"report_id\":\"80d93c0a-a94e-4ab7-aeb5-a4ecd4bfc598\",\"reporting_origin\":\"https://privacy-sandbox-demos-dsp.dev\",\"scheduled_report_time\":\"1717784740\",\"version\":\"0.1\"}"
}
تصحيح أخطاء الحمولة غير المشفّرة
يتم ترميز debug_cleartext_payload باستخدام Base64 وCBOR. يمكنك عرض المجموعة والقيمة باستخدام أداة فك الترميز أو استخدام رمز JavaScript المتوفّر في أداة فك الترميز في "مساحة التخزين المشتركة".
التفاعل مع الملاحظات ومشاركتها
يُرجى العِلم أنّ اقتراح واجهة برمجة التطبيقات Shared Storage API يخضع حاليًا لمناقشة وتطوير نشطَين، وبالتالي قد يتغيّر.
نتطلّع إلى معرفة رأيك في واجهة برمجة التطبيقات Shared Storage API.
- العرض: راجِع العرض التفصيلي.
- المناقشة: انضم إلى المناقشة الجارية لطرح الأسئلة ومشاركة آرائك.