إذا تم إنشاء المستخدم فعليًا، فسيكون معرف المستخدم (user_id) موجودًا في الاستجابة. ولكن نظرًا لأنك لا تستطيع العثور على المستخدم في لوحة تحكم المسؤول، فمن المرجح أنه لم يتم إنشاؤه لسبب ما.
أهلاً، إذن أنت تقوم بإنشاء أداة استيراد. لا ترغب في القيام بذلك عبر استدعاءات واجهة برمجة التطبيقات (API)، بل تريد إنشاء نص برمجي للاستيراد وتشغيله مباشرة من داخل حاوية Docker الخاصة بك.
إنها أسرع بمئة مرة في حالة الاستيراد الكبير، كما تحصل على وصول مباشر إلى طرق فئة ImportScripts::Base التي تجعل إنشاء المستخدمين والعديد من الأمور الأخرى للاستيراد أمرًا سهلاً للغاية، مثل إنشاء المجموعات والفئات والمواضيع والمنشورات:
يمكنك إنشاء السكربت وطلب منهم تشغيله إذا لزم الأمر.
لا توجد مشاكل معروفة تتعلق بهذا. إليك مثال على طلب curl لإنشاء مستخدم:
{"success":true,"active":false,"message":"\u003cp\u003eأنت على وشك الانتهاء! لقد أرسلنا بريد تفعيل إلى \u003cb\u003ecfbcc77ae9f4230d2c25@example.com\u003c/b\u003e. يرجى اتباع التعليمات الواردة في البريد لتفعيل حسابك.\u003c/p\u003e\u003cp\u003eإذا لم يصل البريد، تحقق من مجلد البريد غير المرغوب فيه.\u003c/p\u003e","user_id":4}
من الممكن أن يكون قد حدث تغيير ما لأن الأمر يبدو وكأن رسائل البريد الإلكتروني تُرسل الآن، لكن المستخدم لا يزال يُنشأ. يبدو أن active=true لم يتم تطبيقها.
يجب أن أعترف أيضًا أنني لا أملك أي معرفة بلغة Ruby
لذلك سأحاول التحقيق في مشكلة واجهة برمجة التطبيقات (API) بشكل أعمق. سأحاول تنفيذ استدعاء مشابه لاستدعائك. هناك بضع نقاط تحتاج إلى توضيح:
أ) هل نقطة النهاية هي [mydomain]/users.json؟
ب) هل يجب أن يكون نوع المحتوى "multipart/form-data" أم "application/json"، كما هو مذكور في وثائق واجهة برمجة التطبيقات؟
ج) ما الغرض من "user_fields"؟
نعم، عادةً ما ترغب في إضافة .json إلى جميع المسارات. نعم، يمكنك أيضًا استخدام application/json لنوع المحتوى، وحقول المستخدم اختيارية، لقد كانت مجرد جزء من سكريبت المثال الذي كان لدي بالفعل.
إرسال طلب curl مطابق تمامًا لطلبك (مع بياناتي) أدى إلى إنشاء مستخدم مفعل.
لا أعرف بعد السبب في أنه لم ينجح معي في البداية عندما كنت أُرسل طلبات مشابهة من Postman. سأواصل التحقيق في هذه المشكلة، وسأبلغك هنا إذا عثرت على أي شيء مهم.