كيف تتحقق ممن يحتفظ بـ NFT: ERC-721 وERC-1155
لا تحدد صورة NFT أو حصيلة المجموعة من يحتفظ برمز بعينه. اختر استعلام القراءة فقط الذي يوافق معيار الرمز.
لمعرفة الحامل المسجل حاليا لرمز ERC-721 موجود، اقرأ ownerOf(tokenId) على عقد المجموعة الصحيح. أما في ERC-1155، فاقرأ balanceOf(account, id) لمعرفة عدد وحدات ذلك المعرف التي يحتفظ بها حساب معين. هذان سؤالان مختلفان: قد تتوزع وحدات نوع ERC-1155 واحد بين عدة حسابات.
ابدأ بالشبكة وعنوان عقد المجموعة كاملا ومعرف الرمز. احتفظ بهذه المعرفات الثلاثة معا أثناء الفحص عبر مستكشف أو أداة قراءة عقود تعرفها. تطابق الصورة أو اسم المجموعة أو العدد الإجمالي لرموز NFT لا يكفي لتحديد حيازة رمز بعينه.
يفحص هذا الدليل سجلات الرموز العامة. وهو لا يثبت هوية الشخص وراء العنوان، ولا أصالة العمل أو سعره، ولا حقوقك لدى خدمة حفظ. لا تتضمن الخطوات أي تحويل أو ربط للمحفظة.
اختر الاستعلام المناسب لمعيار الرمز
توفر واجهة ERC-721 عددا على مستوى الحساب واستعلاما لرمز منفرد. أما الواجهة القياسية لـ ERC-1155 فتطلب الحساب ومعرف نوع الرمز معا.
| المعيار ودالة القراءة | ما تدخله | ما تعنيه النتيجة |
|---|---|---|
ERC-721 ownerOf(tokenId) |
معرف رمز واحد | عنوان حامل ذلك الرمز الموجود |
ERC-721 balanceOf(account) |
عنوان حساب واحد | عدد رموز NFT من هذا العقد التي يحتفظ بها |
ERC-1155 balanceOf(account, id) |
الحساب ومعرف نوع الرمز | عدد وحدات ذلك المعرف التي يحتفظ بها |
افترض أن مجموعة ERC-721 تخيلية تضم رمزين بالمعرفين 42 و43. يحتفظ الحساب A بالرمز 42، والحساب B بالرمز 43. العدد في كل حساب هو 1. لا يبين العدد أي الحسابين يحتفظ بالرمز 42، لكن الاستعلام المحدد بالمعرف يبين ذلك.
تخيل الآن عقد ERC-1155 منفصلا وافتراضيا. يحتفظ الحساب A بعدد 3 وحدات من المعرف 42، والحساب B بعدد 2. قد يكون الرصيدان موجبين في لقطة الحالة نفسها. وصف الحساب A بأنه المالك الوحيد للمعرف 42 يتجاهل وحدات الحساب B. تشرح هذه الأمثلة طريقة القراءة، وليست نتائج مأخوذة من مجموعة فعلية.
حدد المجموعة والمعرف قبل الوثوق بالتطابق
ينتمي معرف الرمز إلى عقد معين. المعرف 42 في مجموعة ما لا يحدد المعرف 42 في مجموعة أخرى. تشرح قواعد معرفات ERC-721 زوج العقد والمعرف على سلسلة معينة؛ لا تفترض أن المعرفات متسلسلة.
اعثر على معلومات نشر عقد المجموعة الرسمية عبر مسار موثوق، أو استخدم سجل معاملة معروفة، لتأكيد الشبكة وعنوان العقد كاملا. قد يستخدم عقد مقلد اسما وصورة مألوفين. ولا تجعل استجابة دالة تبدو مطابقة للمعيار ذلك العقد المقلد هو المجموعة المقصودة.
خذ المعرف من تفاصيل العنصر بدلا من تخمينه من الاسم. حافظ على قيمته بدقة. إذا عرضت واجهة المعرف بالنظام الست عشري وأخرى بالنظام العشري، فتأكد أنهما يمثلان العدد الصحيح نفسه قبل المقارنة. يحدد عنوان العقد المجموعة، بينما عنوان الحساب هو الحامل الذي تفحصه. يشرح دليل العناوين والعقود هذا الفرق.
إذا كان العنصر غير متوقع، فاتبع دليل الأمان لرموز NFT المزعجة قبل التفاعل مع أي رابط في وصفه. يمكنك فحص السجلات العامة عبر مسار تثق به مسبقا دون اتباع رابط مطالبة.
أجر فحصا للقراءة فقط واحفظ النتيجة
توضح الخطوات التالية كيفية فحص السجلات العامة. لم نختبرها على محفظة فعلية من أجل هذا المقال. تمت مراجعة الوثائق الأولية لهذه الدوال في 24 أكتوبر 2026.
- دون الهوية الكاملة. سجل الشبكة وعقد المجموعة ومعرف الرمز بدقة. أضف عنوان الحساب إذا كنت تفحص محفظة بعينها.
- تأكد من المعيار واختر دالة القراءة العامة. استخدم تفاصيل العقد وواجهته المتحقق منها في المستكشف الموثوق. تختلف تسميات الواجهات. في ERC-721 استخدم
ownerOfمع المعرف؛ وفي ERC-1155 استخدمbalanceOfمع الحساب والمعرف. غياب الواجهة أو عدم دعمها سبب لمزيد من البحث، وليس لافتراض المعيار الآخر. - اقرأ الحالة الحالية وسجل وقت رصدها. احفظ العنوان أو عدد الوحدات المعاد ورقم الكتلة عند توفره. قارن الاستدعاءات عند الكتلة نفسها إن أمكن؛ فقد يقع تحويل بين استعلامين منفصلين عن أحدث حالة.
- فسر الإجابة ضمن نطاقها الصحيح. قارن عنوان ERC-721 المعاد كاملا بالحساب المقصود. في ERC-1155 يؤكد العدد الموجب وحدات مسجلة لذلك الحساب، بينما تعني استجابة صفر صحيحة عدم وجود وحدات فيه عند تلك اللقطة. لا تسرد أي من النتيجتين جميع الحاملين الآخرين.
- صنف القراءات الفاشلة أو غير المتاحة على أنها مجهولة. احتفظ بالخطأ أو النتيجة غير المتاحة في سجلك. افحص المعرف والعقد والشبكة وأداة القراءة قبل استنتاج غياب الرمز. لا تحول فشل الاستعلام إلى رصيد صفر.
يشترط مرجع OpenZeppelin ERC721 وجود الرمز لاستعمال الدالة العامة ownerOf. لذا قد يفشل الاستعلام عن معرف غير موجود أو محروق بدلا من إعادة عنوان حامل مفيد. لا يشخص ذلك الفشل وحده ما إذا كنت أخطأت في كتابة المعرف، أو اخترت عقدا آخر، أو استعلمت عن رمز غير صالح.
لا تخلط هذه الدالة العامة بدالة مساعدة داخلية يبدأ اسمها بشرطة سفلية. ما تفحصه هو الواجهة العامة الموثقة. لا تحتاج هذه القراءات إلى توقيع أو موافقة أو عبارة استرداد. إذا طلب موقع ذلك لمجرد إظهار الحامل، فتوقف عن استخدام تلك الخطوات.
عندما يكون الحامل المسجل عقدا
يمكن أن يحتفظ حساب عقد برمز NFT. لذلك قد ينتمي العنوان المعاد من استعلام الحامل إلى خزينة أو ضمان وسيط أو آلية تحصيص أو خدمة أخرى بدلا من محفظتك التي توقع بها. لا يحسم ذلك وحده صاحب الحق الاقتصادي أو إمكانية استرداد العنصر.
إذا أودعت NFT في خدمة عن قصد، فتحقق من سجلاتها الرسمية ومن معاملة الإيداع المعروفة. اربط حق حسابك بالمجموعة والمعرف الدقيقين. لا تحول الأصول أو تسحبها لمجرد جعل معرض المحفظة يعرض الصورة المتوقعة.
في مركز السيولة، يخبرك فحص الحامل فقط بالعنوان الذي يحتفظ برمز NFT. يغطي دليل NFT في Uniswap v3 المهمة المنفصلة لفحص أصول المركز الأساسي ورسومه. عنوان حامل NFT وحده لا يعطي أيا من هذين المبلغين.
أنه الفحص بسجل حيازة محدد
يصف مرجع OpenZeppelin ERC1155 النتيجة بأنها وحدات من نوع معين يحتفظ بها حساب. احتفظ بالكمية مع الحساب والمعرف. لا تستبدلها بتسمية مالك واحد على طريقة ERC-721، ولا تقسمها باستخدام مقياس المنازل العشرية لرمز ERC-20 غير ذي صلة.
يكتمل سجلك عندما يحتوي على الشبكة والعقد ومعرف الرمز والمعيار والحامل المعاد أو عدد الوحدات لكل حساب، إضافة إلى كتلة الرصد أو وقته. أضف ملاحظة عن الحفظ إذا كان الحامل المسجل عقد خدمة. إذا بقي حقل أساسي بلا حل، فصنف الحيازة بأنها غير متحقق منها.
المعرض مفيد للتصفح؛ أما هذا السجل فيجيب عن سؤال أضيق حول ما يبلغ عنه العقد المختار بشأن الرمز المحدد. وهو لا يصادق على المجموعة، ولا يمنح إذن التحويل، ولا يحدد شخصا، ولا يحسب قيمة البيع.
أسئلة شائعة
هل يثبت رصيد ERC-721 بقيمة 1 أن المحفظة تحتفظ برمز NFT المحدد الذي أقصده؟
لا. تحسب balanceOf عدد رموز NFT التي يحتفظ بها الحساب في ذلك العقد. استخدم ownerOf مع معرف الرمز المحدد لمعرفة حامله المسجل حاليا. تحقق من استخدام الشبكة وعقد المجموعة نفسيهما.
هل يمكن لأكثر من محفظة الاحتفاظ بمعرف رمز ERC-1155 نفسه؟
نعم. يمكن أن يمثل معرف ERC-1155 عدة وحدات. تستقبل balanceOf الحساب والمعرف وتعيد عدد وحدات ذلك النوع التي يحتفظ بها الحساب. النتيجة الموجبة لا تثبت أن الحساب هو الحامل الوحيد.
هل أحتاج إلى ربط المحفظة أو التوقيع للتحقق من الحامل؟
لا تحتاج استعلامات القراءة العامة هذه إلى توقيع المحفظة أو منح موافقة أو عبارة استرداد. تحدد النتيجة الحيازة المسجلة، ولا تحدد الشخص المتحكم بالعنوان أو حقا منفصلا لدى خدمة حفظ.