ما هو خطأ JSON-RPC الداخلي في MetaMask؟
يشير خطأ JSON-RPC الداخلي إلى أن MetaMask أرسلت طلبًا إلى عقدة بلوكتشين وتلقت فشلاً بدلاً من استجابة قابلة للاستخدام. داخليًا، يتوافق هذا الخطأ مع رمز الخطأ -32603 في مرجع JSON-RPC الخاص بـ MetaMask، وهو مصطلح شامل يحتفظ به البروتوكول للحمولات السيئة أو غير الصالحة.
نظرًا لأن MetaMask تعتمد على JSON-RPC في كل شيء، يمكن أن تتسبب هذه الرسالة في مقاطعة عمليات فحص الرصيد، ومقايضات الرموز، واستدعاءات العقود، وحتى تبديل الشبكة. تظهر هذه المشكلة غالبًا على Ethereum، وشبكات Layer 2 مثل Base و Arbitrum، وشبكة Sepolia testnet، حيث تتعطل نقاط النهاية الفردية دون سابق إنذار.
منذ أن أصبحت MetaMask محفظة متعددة السلاسل تشمل Ethereum و Solana و Bitcoin و TRON، بدأ الخطأ يظهر أيضًا في طلبات Non-EVM التي لم تكن الإصدارات الأقدم المخصصة لـ Ethereum فقط تقوم بها. تغطي الإصلاحات أدناه الأسباب الكلاسيكية والأسباب الأحدث التي نتجت عن إعادة التصميم هذه.

كيفية إصلاح خطأ JSON-RPC الداخلي
تعود معظم الحالات إلى إعداد خاطئ واحد بدلاً من مشكلة أعمق في المحفظة، لذا فإن اتباع الخطوات المذكورة أدناه بالترتيب يحل الخطأ بسرعة.
اتبع هذه الإصلاحات السبعة بالترتيب حتى يختفي الخطأ:
- إعدادات الشبكة: افتح قائمة الشبكة، وقم بتحرير السلسلة الفاشلة، وتأكد من عنوان RPC الخاص بها و Chain ID بمقارنتهما بالوثائق الرسمية، أو أعد إضافتها تلقائيًا عبر ChainList.
- رصيد الـ gas: احتفظ بكمية كافية من الرمز الأصلي للشبكة، مثل ETH أو BNB أو POL، قبل إعادة المحاولة، وتحقق من الرسوم الحية باستخدام متتبع gas لـ Ethereum أولاً.
- تحديث المحفظة: قم بتثبيت أحدث إصدار للإضافة أو تطبيق الجوال، حيث وصلت هندسة حسابات MetaMask متعددة السلاسل في الإصدار 13.5 من الإضافة و 7.57 من تطبيق الجوال، وتقرأ الإصدارات الأقدم الاستجابات الأحدث بشكل خاطئ.
- نقطة نهاية RPC: استبدل نقطة نهاية بطيئة أو غير نشطة ببديل من ChainList أو مزود مخصص مثل Infura أو Alchemy، ثم أعد محاولة المعاملة الفاشلة.
- محافظ الأجهزة: قم بتحديث البرامج الثابتة لـ Ledger أو Trezor، وقم بتمكين بيانات العقود الذكية في تطبيق Ethereum الخاص بالجهاز، وأعد الاتصال عبر طريقة الاتصال التي يوصي بها دليل استكشاف الأخطاء وإصلاحها من Ledger حاليًا.
- إعادة تعيين الحساب: استخدم خيار مسح بيانات علامة تبويب النشاط في الإعدادات المتقدمة لمسح سجل المعاملات المخزن مؤقتًا و nonces العالقة، مما يجبر MetaMask على إعادة المزامنة بشكل نظيف مع العقدة.
- فحص الـ testnet: تأكد من أن الـ testnet الذي تستهدفه لا يزال موجودًا، لأن Holesky تم إيقافها بعد ترقية Fusaka ونقاط النهاية القديمة الخاصة بها ترفض الآن كل طلب.
إذا فشلت كل الخطوات، يقدم مركز مساعدة MetaMask تشخيصات أعمق، بما في ذلك سجلات الحالة التي يمكن لفريق الدعم مراجعتها مباشرة. عادةً ما تعني الإخفاقات المستمرة في dApp واحد أن المشكلة تكمن في استدعاءات العقود الخاصة بهذا التطبيق بدلاً من محفظتك، لذا اختبر موقعًا آخر قبل التصعيد.

كيفية إضافة RPC بشكل صحيح باستخدام ChainList
تظل تفاصيل RPC المكتوبة يدويًا هي السبب الأكثر شيوعًا لهذا الخطأ، حيث أن حرفًا واحدًا خاطئًا في URL أو Chain ID يعطل كل طلب ترسله المحفظة بعد ذلك. يزيل ChainList هذا الخطر من خلال الحفاظ على نقاط نهاية موثقة لمئات الشبكات ودفعها إلى MetaMask بنقرة واحدة.
نستخدم نفس التدفق في دليلنا حول إضافة HyperEVM إلى MetaMask، لذا تنطبق الخطوات أدناه على أي سلسلة EVM تقريبًا، من شبكات Layer 2 الرئيسية إلى شبكات mainnet الجديدة كليًا. أربع خطوات تنقلك من قائمة شبكة فارغة إلى اتصال موثق.

1. ربط MetaMask بـ ChainList
يقرأ ChainList معلمات الشبكة من سجل يحتفظ به المجتمع، لذا فإن ربط محفظتك به يسمح له بكتابة تلك التفاصيل الموثقة مباشرة في MetaMask دون أي نسخ يدوي.
إليك كيفية ربط محفظتك بالموقع:
- افتح ChainList: انتقل إلى chainlist.org وتحقق من تهجئة شريط العنوان بعناية قبل الاتصال، لأن نسخًا مستنسخة من الموقع قد انتشرت بنقاط نهاية RPC ضارة محملة مسبقًا.
- ربط المحفظة: انقر على زر ربط المحفظة في الزاوية العلوية اليمنى، واختر MetaMask من الخيارات، ووافق على طلب الاتصال الذي يظهر في النافذة المنبثقة للإضافة.
- تحقق من الأذونات: يحتاج الموقع فقط إلى وصول للعرض لدفع تفاصيل الشبكة، لذا ارفض أي مطالبة تطلب توقيعات أو موافقات رموز أو أذونات إنفاق من أي نوع.

2. ابحث عن الشبكة الصحيحة
معظم السلاسل تُصدر إصدارات متعددة، وخلط الـ mainnet مع الـ testnet الخاص بها يؤدي إلى فشل المعاملات، وأرصدة غير مرئية، وأخطاء JSON-RPC جديدة في غضون دقائق.
اتبع هذه الفحوصات للوصول إلى الإدخال الصحيح:
- ابحث بدقة: اكتب اسم الشبكة بالضبط، سواء كانت Base أو Linea أو سلسلة أحدث مثل Monad، وقم بتمكين تبديل الـ testnets فقط عندما تحتاج إليها.
- تحقق من المعرفات: طابق Chain ID المعروض مع الوثائق الرسمية للمشروع، حيث أن شبكات الاحتيال أحيانًا تعيد استخدام أسماء مألوفة بينما تشير إلى سلاسل مختلفة تمامًا.
- انتبه لشبكات الـ testnet: لاختبار Ethereum، استخدم Sepolia لـ dApps و Hoodi لعمل المدققين، لأن مؤسسة Ethereum أوقفت Holesky وقوائمها لم تعد تعمل.

3. إضافة RPC إلى MetaMask
بمجرد ظهور الشبكة الصحيحة، يقوم ChainList بتسليم التكوين الكامل إلى MetaMask في مطالبة واحدة، مما يزيل الأخطاء المطبعية التي قد تحدث عند الإدخال اليدوي.
أكمل عملية التسليم بهذه الإجراءات الثلاثة السريعة:
- أضف الشبكة: اضغط على إضافة إلى MetaMask بجانب الإدخال الذي يتمتع بأفضل درجة زمن انتقال، حيث يقوم ChainList بترتيب كل نقطة نهاية عامة حسب السرعة والموثوقية المقاسة مباشرة.
- راجع النافذة المنبثقة: اقرأ نافذة MetaMask التي تعرض RPC URL و Chain ID ورمز العملة ومستكشف الكتل، ثم قارن كل قيمة قبل منح موافقتك النهائية.
- قم بالتبديل: وافق على الإضافة واختر تبديل الشبكة عند المطالبة، مما يجعل السلسلة الجديدة نشطة على الفور وجاهزة لمعاملة اختبار صغيرة.

4. تحقق من الإعدادات بعد ذلك
حتى الإدخالات التي تم التحقق منها تتغير بمرور الوقت مع إيقاف المزودين لنقاط النهاية، لذا فإن مراجعة سريعة داخل MetaMask تؤكد أن كل شيء تم إعداده بشكل صحيح ولا يزال يستجيب اليوم.
قم بإجراء هذا الفحص النهائي قبل نقل الأموال الحقيقية:
- افتح الإعدادات: انتقل إلى محدد الشبكة، واختر السلسلة المضافة حديثًا، وانقر على تحرير لعرض كل معلمة مخزنة ستستخدمها MetaMask لطلباتها.
- التحقق المتقاطع: قارن RPC URL و Chain ID ورمز العملة مع وثائق الشبكة نفسها بدلاً من مدونة طرف ثالث أو لقطة شاشة أو رسالة Discord غير رسمية.
- تدوير نقاط النهاية: إذا بدت الطلبات بطيئة أو فشلت بشكل متقطع، استبدل عنوان URL بخيار ChainList آخر، حيث تدعم MetaMask الآن عناوين RPC URL متعددة مخزنة لكل شبكة.

لماذا يحدث خطأ JSON-RPC؟
تتلخص إخفاقات JSON-RPC في أمر واحد: إما أن العقدة لم تتلق طلبًا صالحًا أبدًا أو لم تتمكن من إرجاع استجابة صالحة. تُدرج وثائق مطوري MetaMask عدد 17 رمز خطأ JSON-RPC مميزًا، ويتواجد التنوع الداخلي جنبًا إلى جنب مع حدود المعدل وأخطاء التحليل والمعاملات المرفوضة في هذا الجدول.
يُوفر فهم وضع الفشل الذي تواجهه الوقت، لأن كل واحد منها يشير إلى حل مختلف، بدءًا من تبديل نقاط النهاية وصولًا إلى مجرد انتظار انتهاء الازدحام.
هذه هي الأسباب الأكثر شيوعًا لفشل طلبات JSON-RPC:
- الطلبات غير الصحيحة التكوين: يقوم تطبيق dApp بإنشاء استدعاء عقد ببيانات إدخال سيئة أو معلمات خاطئة، لذلك ترفض العقدة الحمولة قبل أن تصل إلى التنفيذ.
- حدود المعدل: تضع نقاط النهاية العامة المجانية والطبقات القائمة على الرصيد من Infura حدًا لحجم الطلبات، وتدفع الفترات المزدحمة مثل إطلاق الرموز المحافظ لتجاوز تلك الحدود القصوى في غضون ثوانٍ قليلة.
- العقد القديمة: تقدم عقدة غير متزامنة حالة سلسلة بيانات قديمة، مما ينتج عنه أرصدة خاطئة ومعاملات عالقة وعروض swap تفشل لحظة محاولة MetaMask تنفيذها.
- تراجعات العقود: ينفد gas من العقد الذكي أو يتراجع في منتصف التنفيذ، وهو ما تظهره MetaMask كفشل RPC أثناء bridging أو staking أو مطالبات airdrop للرموز.
- عدم تطابق السلاسل: تتجاهل بعض نقاط النهاية الأساليب التي تتطلبها شبكات Layer 2، لذلك تفشل عمليات swap أو عمليات النشر على تلك السلاسل حتى عندما يكون معرف السلسلة صحيحًا.
- شبكات testnet المعطلة: تفشل الطلبات الموجهة إلى شبكات testnet المتقاعدة مثل Holesky أو Goerli الأقدم على الفور، لأنه لا توجد عقد نشطة تستجيب للطلبات على نقاط النهاية المهملة تلك بعد الآن.
- الاستدعاءات المجمعة: تجمع ميزات الحساب الذكي EIP-7702 عدة إجراءات في معاملة واحدة، ويمكن أن تؤدي خطوة تراجع واحدة داخل الدفعة إلى فشل الطلب المجمع بأكمله.
بعض هذه الأمور تحت سيطرتك وبعضها ليس كذلك. يمكن إصلاح اختيار نقطة النهاية وأرصدة gas وإصدارات البرامج في دقائق، بينما تتطلب انقطاعات المزود وازدحام الشبكة ببساطة الصبر أو التبديل المؤقت إلى RPC مختلف حتى تتعافى الظروف.

كيف غيرت تحديثات MetaMask الأخيرة استكشاف أخطاء RPC وإصلاحها
تبدو MetaMask مختلفة تمامًا عن الـ wallet الذي ابتلي بهذا الخطأ لأول مرة. بين عامي 2025 و 2026، استوعبت دعم Solana و Bitcoin و TRON و SEI و Monad، وأعادت بناء نظام حساباتها، وطرحت ترقيات الحسابات الذكية، وكل ذلك أعاد تشكيل مكان وكيفية ظهور إخفاقات RPC.
الحسابات متعددة السلاسل تدمج كل شبكة في واحدة
منذ الإصدار 13.5 من الإضافة، يجمع كل حساب MetaMask عنوان EVM واحدًا وعنوان Solana واحدًا وعنوان Bitcoin واحدًا تحت اسم واحد، مع توجيه الـ wallet للطلبات تلقائيًا. لم يعد الفشل في شبكة واحدة يعني أن الـ wallet الخاص بك معطل بالكامل، لذا اختبر دائمًا سلسلة ثانية قبل افتراض وجود فساد.
تستخدم سلاسل Non-EVM بنية العقد الخاصة بها، لذلك ينتج انقطاع Solana أعراضًا مختلفة عن انقطاع Ethereum حتى داخل نفس الواجهة. عندما تظهر الأخطاء في نظام بيئي واحد فقط، يكون سبب ذلك على الأرجح هو مشكلة في نقطة النهاية على تلك الشبكة المحددة بدلاً من أي خطأ في تثبيتك.

الحسابات الذكية تضيف سطح فشل جديدًا
نشّط تحديث Pectra الخاص بـ Ethereum EIP-7702 في مايو 2025، مما سمح لحسابات MetaMask العادية بالتصرف مؤقتًا كعقود ذكية للمعاملات المجمعة ورعاية gas. تنتقل هذه العمليات المجمعة عبر بنية تحتية إضافية، وعندما يتصرف المجمّع أو الدافع بشكل خاطئ، غالبًا ما يبلغ الـ wallet عن ذلك كخطأ داخلي عام.
إذا ظهر الخطأ فقط عندما يطلب تطبيق dApp إجراءً مجمعًا أو ترقية حساب، ارفض مطالبة الحساب الذكي وأعد المحاولة كمعاملة قياسية. هذا يعزل ما إذا كانت المشكلة تكمن في تدفق التفويض أو في اتصال RPC الأساسي الذي كنت ستستكشفه عادةً.
اضطراب شبكة testnet الخاصة بـ Ethereum عطل التكوينات القديمة
أوقفت مؤسسة Ethereum Holesky بعد الانتهاء من ترقية Fusaka، واستبدلتها بـ Hoodi لاختبار المدققين بينما أوصت بـ Sepolia لأعمال العقود الذكية. أي تكوين لـ Holesky لا يزال محفوظًا في MetaMask يرمي الآن أخطاء JSON-RPC في كل طلب، ولن يؤدي أي تعديل في الإعدادات إلى إحيائه.
يجب على المطورين حذف إدخالات testnet القديمة بالكامل وإعادة إضافة الإدخالات الحالية عبر ChainList. تظل Sepolia الخيار الافتراضي لاختبار dApp، بينما تم التخطيط بالفعل لخليفة لـ Sepolia، لذا توقع أن تستمر دورة إيقاف دعم testnet هذه في إنتاج أخطاء RPC الوهمية كل بضع سنوات.
كيفية قراءة رمز الخطأ خلف الرسالة
غالبًا ما تخفي MetaMask الرمز الرقمي داخل تفاصيل الخطأ، ولكن توسيعها يخبرك بالضبط بفئة الفشل التي حدثت. مقارنة الرمز بجدول مرجع MetaMask يحوّل الرسالة الغامضة إلى تشخيص محدد ويشير عادةً مباشرة إلى الإصلاح الصحيح.
تشكل مجموعة صغيرة من الرموز سببًا لمعظم حالات الفشل التي يبلغ عنها المستخدمون، لذا فإن التعرف عليها فورًا يجعل استكشاف الأخطاء وإصلاحها أسرع بكثير من التخمين الأعمى في كل مرة.
فيما يلي الرموز التي تستحق الحفظ ومعانيها:
- الرمز -32603: الخطأ الداخلي الكلاسيكي، الذي يتم تشغيله بواسطة حمولة سيئة أو غير صالحة، وهو الرمز الذي يكمن وراء معظم ظهورات رسالة خطأ MetaMask هذه بالضبط.
- الرمز -32000: إدخال غير صالح، وعادة ما يكون بسبب معلمات مفقودة أو كتلة لم تعالجها العقدة بعد، والذي غالبًا ما يختفي بعد التبديل إلى نقطة نهاية RPC أفضل.
- الرمز -32005: تجاوز الحد، مما يعني أن طلباتك تجاوزت سعة المزود، لذا ابطئ، انتظر دقيقة، أو ببساطة انتقل إلى نقطة نهاية عامة أقل ازدحامًا.
- الرمز -32602: وسيطة غير صالحة، وعادة ما تكون خطأ في التنسيق مثل بادئة 0x مفقودة، مما يشير إلى رمز dApp بدلاً من إعدادات محفظتك أو شبكتك.
- الرمز -32601: الأسلوب غير موجود، مما يعني أن نقطة النهاية لا تدعم ما طلبته MetaMask، وهي مشكلة متكررة في نقاط نهاية RPC العامة البسيطة التي تخدم السلاسل الأحدث.
- الرمز 429: خطأ في إنتاجية HTTP بدلاً من خطأ JSON-RPC، مما يشير إلى أن المزود نفسه قام بتقييد طلباتك، وهو ما يمكن حله بسهولة من خلال الخطط المطورة أو تدوير نقطة النهاية.

كيفية تجنب مشكلات RPC في MetaMask
تعتمد الوقاية بشكل أساسي على إدارة نقاط النهاية. أضف الشبكات عبر ChainList أو الوثائق الرسمية بدلاً من البرامج التعليمية العشوائية، وقم بتخزين عنوان URL احتياطي لـ RPC لكل سلسلة تستخدمها بانتظام، وفكر في الحصول على مفتاح شخصي مجاني من مزود مثل Infura أو Alchemy لتتوقف عن التنافس على السعة العامة المشتركة.
تعد الصيانة الروتينية بنفس القدر من الأهمية. حافظ على تحديث الإضافة وتطبيق الهاتف المحمول، وامسح بيانات النشاط بعد المعاملات الفاشلة بدلاً من ترك الأخطاء القديمة تتراكم، وقم بإزالة الشبكات التي لم تعد تستخدمها، حيث أن كل إدخال غير مستخدم هو خطأ مستقبلي ينتظر نقرة عرضية.

أفكار ختامية
يبدو خطأ JSON-RPC الداخلي مقلقًا ولكنه نادرًا ما يشير إلى فقدان الأموال، بل هو مجرد اتصال معطل بين محفظتك وعقدة. إن التحقق من تفاصيل الشبكة، وتبديل نقاط النهاية، وتمويل gas، وتحديث البرامج يحل الغالبية العظمى من الحالات دون الحاجة إلى تدخل الدعم.
مع استمرار MetaMask في التوسع عبر السلاسل، أصبح معرفة كيفية إدارة اتصالات RPC بنفسك مهارة CORE أساسية للمحفظة. احفظ ChainList في المفضلة، وتعلّم رموز الخطأ المذكورة أعلاه، وإذا كنت تقيّم البدائل، فإن دليلنا لأفضل محافظ العملات المشفرة يقارن كيفية تعامل الخيارات المتنافسة مع نفس المشكلات.






