Freecodecamp: استبدل مشروع Camper Leaderboard بمشروع مشابه وظيفيًا استنادًا إلى المنتدى

تم إنشاؤها على ٥ يونيو ٢٠١٨  ·  45تعليقات  ·  مصدر: freeCodeCamp/freeCodeCamp

صِف مشكلتك - وإذا أمكن - كيفية إعادة إنتاجها

واجهات برمجة تطبيقات Camper ليدربورد معطلة كما هو موضح أدناه:

أضف ارتباطًا إلى الصفحة التي بها المشكلة

https://fcctop100.herokuapp.com/api/fccusers/top/recent
https://fcctop100.herokuapp.com/api/fccusers/top/alltime

أخبرنا عن متصفحك ونظام التشغيل الخاص بك

  • اسم المتصفح: Chrome
  • إصدار المتصفح: 67
  • نظام التشغيل: Windows 7

إذا أمكن ، أضف لقطة شاشة هنا

help wanted learn projects-frontend

التعليق الأكثر فائدة

@ Em-Ant ، شكرا على الاستجابة السريعة! تعمل نقطة نهاية Glitch API الخاصة بك بشكل مثالي ، لذلك سأقوم فقط بتحديث وصف المشروع بقصص المستخدم أعلاه والروابط الخاصة بك.

ال 45 كومينتر

tchaffeetbushman @ إم-النملة يمكن لنا أن تحقق ولدي بديل لهذا على خلل؟

raisedadead لا أعرف من طور واجهات برمجة التطبيقات وما إذا كان هناك بديل. قبل وقتي. ربما هذا شيء قد ترغب في استضافته على نطاقات FCC من الآن فصاعدًا بحيث يكون متاحًا دائمًا وليس تحت سيطرة طرف ثالث؟ يُرجى إعلامي إذا كان هناك أي شيء آخر يمكنني المساعدة فيه هنا.

هل لدينا شفرة المصدر لهذا التطبيق؟ أتذكر أنه يعمل بشكل دوري على تجريف gitter أو صفحات ملف تعريف fcc. لا أعرف ما إذا كان من الممكن حدوث خلل. لماذا لا يعرض freecodecamp نقطة نهاية API مع ترتيب الكعك؟

هل لدينا شفرة المصدر لهذا التطبيق؟

https://github.com/roelver/fcctop100

إذا استطاع شخص ما الحصول على بعض التحليل الأساسي لي ، وإذا كانت الشفرة جيدة بما يكفي وتحتاج إلى القليل من الإصلاح ، فسأدخل هذا في مؤسستنا ويمكننا وضعها على Glitch؟

لماذا لا يعرض freecodecamp نقطة نهاية API مع ترتيب الكعك؟

سيؤكد فقط على 800+ الحالية التي نحصل عليها في أوقات الذروة.

أود استبدال التحدي. QuincyLarson هل لديك شيء في الاعتبار؟

raisedadead لم يعد مشروع نقلناه إلى إعداد المقابلة. ومع ذلك ، سيكون من الجيد أن يكتشف شخص ما كيفية إصلاح ذلك. لا أعتقد أن الضغط الناتج عن تطبيقات لوحة المتصدرين سيكون بهذه الروعة - فقد كان لدينا الآلاف من لوحات المتصدرين هذه في الماضي ولا يبدو أن لها تأثيرًا كبيرًا.

يجب أن ننتظر حتى يتم تفعيل واجهة برمجة التطبيقات المفتوحة الجديدة الخاصة بنا قبل محاولة إصلاح ذلك.

ألقيت نظرة على الكود وأعرف كيف يعمل. كانت تستخدم في كشط غرفة للحصول على أسماء مستخدمي الكارافانات ، ثم حصلت على معلومات حول وصول كل عربة إلى صفحة ملف التعريف الخاص به / بها. في الوقت الحالي لا يعمل لأن غرفة gitter مغلقة ، ومفتاح api الخاص بالمؤلف (الثابت في المصدر ...) منتهي الصلاحية / محظور.

إذا كانت هناك طريقة للوصول بشكل دوري (مرة واحدة في اليوم أو الأسبوع؟) إلى بعض المعلومات حول الترتيب مباشرة من freecodecamp ، فسيكون من الأسهل بكثير إنشاء بديل لها في حالة حدوث خلل.

مرحبًا QuincyLarson ، أعتقد أنه لا يزال على قائمة

image

raisedadead نقطة جيدة - لقد نسيت أن هذا كان في تلك القائمة. نحن بالتأكيد بحاجة إلى تشغيل هذا المشروع مرة أخرى.

@ Em-Ant شكرا لوصف المشكلة. هذا ما أقترحه - نحول هذا المشروع للتركيز بدلاً من ذلك على المنتدى.

بدون مفتاح API ، يعتقد المرء أنه يمكن للأشخاص القيام به هو إظهار سلاسل الرسائل النشطة مؤخرًا باستخدام واجهة برمجة التطبيقات الخاصة بالمنتدى:

https://forum.freecodecamp.org/latest.json

سنحتاج إلى إنشاء عرض توضيحي جديد تمامًا لهذا الأمر والتوصل إلى قصص مستخدم جديدة ، ولكنها ستكون من الناحية الوظيفية مشابهة لمشروع لوحة المتصدرين القديم.

هل سيكون أي شخص مهتمًا بمعالجة هذا؟

QuincyLarson لقد بدأت العمل على عرض توضيحي بديل محتمل يمكنني بعد ذلك كتابة بعض قصص المستخدمين منه ، على الرغم من أنه يبدو أن رأس CORS قد لا يتم تمكينه ليتمكن من جلب موجز API هذا؟

@ jgibson02 هل أحرزت أي تقدم في العرض التوضيحي البديل المحتمل؟

ما زلت أؤيد تغيير موضوع هذا المشروع إلى شيء ذي واجهة برمجة تطبيقات مفتوحة ، مثل forum.freecodecamp.org. ولكن إذا أحرزت تقدمًا في هذا الأمر ، فسأكون مهتمًا برؤيته :)

كنت أواجه مشكلات في استرداد البيانات من https://forum.freecodecamp.org/latest.json API عند تقديم طلب من CodePen. يبدو أن CORS بحاجة إلى التمكين على واجهة برمجة التطبيقات هذه حتى يتمكن المعسكرون من استخدامها هناك. في الوقت الحالي ، سأستمر في العمل على عرض توضيحي عن طريق تنزيل نسخة من JSON.

Bounceyraisedadead ما يمكن أن يكون الاعتبارات الأمنية لتمكين CORS على API لدينا المنتدى؟

يبدو أن هذا إصلاح بسيط نسبيًا على Discourse إذا قررنا المضي قدمًا فيه: https://meta.discourse.org/t/correct-cors-enopped-steps/55697

وطالما أنك قادر على توسيع نطاقه ليشمل طلبات GET وتكون انتقائيًا بشأن نقاط النهاية المكشوفة.

وهنا التجريبي الذي أدليت به حتى باستخدام حاليا تحميل نسخة من JSON. هل تعتقد أن هذا يناسب الفاتورة بقدر ما ترغب في رؤيته لقصة مستخدم شاملة؟
إذا كان الأمر كذلك ، فيمكنني البدء في كتابة بعض قصص المستخدمين وإرشاداتهم المفككة.

فيما يلي بعض الإرشادات الممكنة وقصص المستخدم:

خذ مشاريعك الرئيسية - أنشئ صفحة منتدى FreeCodeCamp الرئيسية

  • الهدف: إنشاء تطبيق CodePen.io مشابه وظيفيًا لهذا: https://codepen.io/jgibson02/full/BVvbRX/.
  • أكمل قصص المستخدم أدناه. استخدم أي مكتبات أو واجهات برمجة تطبيقات تحتاجها. امنحها أسلوبك الشخصي.
  • قصة المستخدم: يمكنني مشاهدة قائمة بأحدث المنشورات على منتديات freeCodeCamp.
  • قصة المستخدم: لكل موضوع ، يمكنني رؤية العنوان وقائمة الروابط للمستخدمين الذين نشروا فيه مؤخرًا.
  • قصة المستخدم: يمكنني رؤية عدد الردود وطرق العرض لكل موضوع ، والطابع الزمني لآخر مرة كان الموضوع نشطًا.
  • تلميح: للحصول على أحدث 30 مشاركة في المنتدى: https://forum.freecodecamp.org/latest.json.
  • تذكر استخدام Read-Search-Ask إذا واجهتك مشكلة.
  • عند الانتهاء ، انقر فوق الزر "لقد أكملت هذا التحدي" وقم بتضمين ارتباط إلى CodePen الخاص بك.
  • يمكنك الحصول على تعليقات حول مشروعك من خلال مشاركته مع أصدقائك على Facebook.

@ jgibson02 رهيبة! شكرا للمساعدة في إنشاء قصص المستخدم الممتازة هذه. سأعمل مع Bouncey بشأن قضية CORS.

QuincyLarson هل كان هناك أي تطور في قضية CORS؟

مرحبا،
لقد قمت بالفعل بإنشاء لوحة LeaderBoard التي تم كسرها الآن بسبب مشكلة API.
أعجبتني قصص المستخدم الأصلية:
قصة المستخدم: يمكنني رؤية جدول لأعضاء المعسكرات المجانية في freeCodeCamp الذين حصلوا على أكبر عدد من النقاط خلال الثلاثين يومًا الماضية.
قصة المستخدم: يمكنني معرفة عدد نقاط الكعكة التي ربحوها في الثلاثين يومًا الماضية ، وعدد النقاط التي حصلوا عليها إجمالاً.
قصة المستخدم: يمكنني التبديل بين فرز القائمة حسب عدد نقاط الكعكة التي حصلوا عليها في الثلاثين يومًا الماضية وعدد نقاط الكعكة التي حصلوا عليها إجمالاً.

لم تعد هناك نقاط كعك ، لكن هناك إعجابات. ولم يتم تقسيمها إلى شهرية بعد الآن. يبدو أن معظم الأيام هي 288.

بدلاً من الارتباط بآخر منشور ، هل يمكننا التركيز على اسم Camper ، وعدد مرات الإعجاب التي حصل عليها هذا الشخص (بدلاً من نقاط الكعكة) على مدار 30 يومًا طوال الوقت؟

https://www.freecodecamp.org/forum/directory_items.json؟period=all&order=likes_received.json

هل يعمل أي شخص على إصلاح واجهة برمجة التطبيقات هذه لـ Camper Leaderboard؟

إذا لم يكن هناك حل أفضل ، فيمكننا تجاوز مشكلة cors في إنشاء وكيل عند حدوث خلل (أنا خبير تمامًا في هذا ...) يمكنني تحديد نطاق الطلب للسماح لي والأساليب والإرشادات فقط إذا لزم الأمر. يجب أن تكون سهلة البناء. اسمحوا لي أن أعرف إذا كنت تريد مني أن أفعل ذلك.

@ Em-Ant نعم - هذا يبدو وكأنه حل لطيف.

يرجى إطلاعنا على آخر المستجدات وإعلامنا إذا كان بإمكاننا فعل أي شيء للمساعدة.

نقطة نهاية api: https://buttercup-island.glitch.me/latest
مشروع اختبار (متشعب من @ jgibson02 ): https://codepen.io/Em-Ant/pen/modqWP

إذا كنت ترغب في ذلك ، فيمكننا عرضه على مجال مخصص تملكه (على سبيل المثال ، نطاق فرعي مجاني).

اسمحوا لي أن أعرف ما إذا كان على ما يرام ، وإذا كنت بحاجة إلى أي شيء آخر. إذا كان هذا حلاً جيدًا ، فسأعطي إذن تحرير لـ camperbot ، لنقل الملكية إلى freecodecamp.

نظرًا لأن @ Em-Ant قد أنشأت نقطة نهاية API الجديدة لبيانات forum ، أعتقد أن الوقت قد حان لتغيير قصص المستخدم كما هو مقترح هنا من قبل @ jgibson02 ؟

يوجد خطأ في مشروع الاختبار في السطر 67: خطأ مرجعي غير معلوم: لم يتم تعريف النمط
على الرابط /Em-Ant/pen/pen.js:67

أنا أتفق مع nuhman حول استخدام قصص المستخدم المقترحة.

تم إصلاح خطأ ReferenceError (على قلمي الأصلي) ، على الرغم من أنه في رأيك ما الذي يجب تغييره في قصص المستخدم؟

مرحبا، شكرا.
يبدو أننا لا نقوم بالفرز ، إنه يأتي حسب أحدث موضوع ....
إنه يعمل بشكل جيد للغاية لصفحة المنتدى.

لقد عملت بجد على لوحة المتصدرين ومن المؤسف ألا أكون قادرًا على التباهي بها. حتى بدون براونيز ، أود أن أرى من قام مؤخرًا بنشر - ومن قام بالنشر أكثر من مرة - مع روابط لتلك المنشورات - وربما ملف تعريف المستخدم ..

أحب رؤية عدد مرات مشاهدة الموضوع.

لدي خطأ في حظر القراءة عبر الأصل (CORB) عند محاولة جلب البيانات أيضًا عند استخدام الرابط https://www.freecodecamp.org/forum/latest.json . _ {mode: 'no-cors'} _ غير فعال.
هل يوجد أي حل بديل لجلب البيانات من "ليدربورد" (وليس لتشفيرها الثابت)؟

لم يكن لدي مشكلة في ذلك. اي متصفح تستعمل؟

لم يكن لدي مشكلة في ذلك. اي متصفح تستعمل؟

جوجل كروم
الإصدار 73.0.3683.86 (الإصدار الرسمي) (64 بت)

هذا جديد بالنسبة لي. لكنني وجدت هذا الاقتراح كحل محتمل ...

https://stackoverflow.com/questions/54701399/how-to-fix-cross-origin-read-blocking-corb-blocked-cross-origin-response-with

شكرا لك. ولكن إذا قمت فقط بتعطيل سياسة الأمان في متصفحي ، فلن تحل المشكلة للمتصفحات / المستخدمين الآخرين. لقد رأيت الحلول المتعلقة بإعداد الرؤوس ، لكنني لا أستطيع تنفيذها في Codepen (حيث توجد لوحة المتصدرين الخاصة بي) ، لأن هناك جانب العميل فقط.

أنا آسف. لم أره بما يكفي لفهمه. لقد فهمت أن CodePen حلت مشكلات CORS المحتملة ، لكن CORB جديد بالنسبة لي.

هل أنت قادر على الذهاب إلى نقطة نهاية API الفعلية على الإطلاق؟ أم أنها تأتي فقط من LeaderBoard؟

بالرابط المباشر أرى بيانات json. تظهر المشكلة عندما أحاول إحضار json من freecodecamp.org في codepen.

لقد راجعت أقلامي الأخرى في codepen ، والتي تجلب البيانات من مواقع أخرى (هناك Rawgit.com و glitch.com و wikipedia.org و ipinfo.io و github.com) ، وهي تعمل بشكل صحيح. لذا ، فإن المشكلة تكمن بالضبط مع freecodecamp-json. ربما يعتمد ذلك على إعدادات codepen ، لكنني لا أجد أرضية مشتركة مع دعمهم حتى الآن.

أوتش. @ jgibson02 هل رأيت هذا يحدث من قبل؟
إذا كان الأمر كذلك ، هل تعرف الحل البديل؟

ColorizeMySky هل جربت نقطة النهاية من @ Em-Ant في وقت سابق؟
https://buttercup-island.glitch.me/latest

ربما هذا سوف يعمل؟

https://buttercup-island.glitch.me/latest

ربما هذا سوف يعمل؟

نعم شكرا جزيلا. يجلب json مع بيانات المنتدى من خلل.

لقد قمت بتحديث CodePen الخاص بي لاستخدام @ Em-Ant's API على https://buttercup-island.glitch.me/latest لتجنب مشكلة CORS.
QuincyLarson ، هل أنت موافق على استخدام glitch.me كطريقة لإعادة التوجيه إلى مجال freecodecamp؟ إذا كان الأمر كذلك ، فربما يكون هذا جاهزًا لإعادة دمجه في المناهج الدراسية.

مهلا @ scissorsneedfoodtoo هل يمكنك تناول هذا الأمر؟ كل ما نحتاجه هو إنشاء مشروع خلل مثل المشروع المذكور أعلاه كحل بديل وتحديث بذرة التحدي لاستخدامه في التعليمات؟

raisedadead ، بالتأكيد ، سأقوم بذلك مباشرة

لا تحتاج إلى إنشاء مشروع خلل آخر إذا كنت لا تريد ذلك. ذلك
لقد شارك أحدهم بالفعل الملكية بيني وبين كامبربوت ، لذا يمكنك التعديل
عليه.

Il gio 4 أبريل 2019 ، 12:13 Kristofer Koishigawa [email protected] ha
سكريتو:

raisedadead https://github.com/raisedadead ، بالتأكيد ، سأقوم بذلك مباشرة

-
أنت تتلقى هذا لأنه تم ذكرك.
قم بالرد على هذا البريد الإلكتروني مباشرة ، وقم بعرضه على GitHub
https://github.com/freeCodeCamp/freeCodeCamp/issues/17450#issuecomment-479836966 ،
أو كتم الخيط
https://github.com/notifications/unsubscribe-auth/AMWwVve4x2DPL4_ApR55oakeZHbBGlGGks5vddAxgaJpZM4UbaVj
.

@ Em-Ant ، شكرا على الاستجابة السريعة! تعمل نقطة نهاية Glitch API الخاصة بك بشكل مثالي ، لذلك سأقوم فقط بتحديث وصف المشروع بقصص المستخدم أعلاه والروابط الخاصة بك.

@ Em-Ant ، في واجهة برمجة التطبيقات الخاصة بك ، لا ترى كيفية الحصول على رابط الموضوع المناسب. هل هو ممكن؟

تقومColorizeMySky ببروكسيات API خلل الطلب إلى https://www.freecodecamp.org/forum/latest.json حتى تحصل على نفس الاستجابة بالضبط. يضيف فقط رؤوس CORS الضرورية إلى الاستجابة الأصلية.

ألقيت نظرة سريعة على بنية الاستجابة وأرى قسمين: أحدهما "المستخدمون" والآخر "الموضوعات". يمكنك الحصول على عنوان url للنشر الذي يضيف عنوان url الأساسي للمنتدى ، وخاصية "slug" لإدخال الموضوع.

شكرا للجميع على المساعدة. لقد تمكنت من إنهاء هذا المشروع بواجهة برمجة تطبيقات جديدة ، وواجهة برمجة التطبيقات الجديدة جيدة لاستبدال المهمة القديمة. يمكنني أن أحضر. قم بفرز وإضافة معلومات وصور إضافية والرابط وما إلى ذلك https://codepen.io/Colorize_my_sky/full/aMxRRq

تهانينا على ColorizeMySky ! هذا يبدو رائعا وسريع الاستجابة.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات