نشر الالتزامات عبر ويب هوك داخل موضوع كرد

مرحباً يا أصدقاء،
لقد بحثت ولكن لم أستطع العثور على التوجيه الصحيح.

أريد نشر رد تلقائي داخل موضوع بمجرد دفع (push) التزام (commit) في مستودع على GitHub - تلقائياً عبر Webhook.

أعمل مع Integromat ونجحت بالفعل في فعل شيء مشابه مع المواضيع

لقد قمت بإعداد واجهة برمجة تطبيقات (API) في Discourse، و Webhook في GitHub، وسيناريو POST HTTP في Integromat، لكنني أفتقد القطعة النهائية لجعلها تعمل.

يبدو أن محاولتي الحالية كالتالي وهي لا تعمل.

أعتقد أن السبب هو أن Discourse لا يعرف ماذا يفعل بطلب POST.
أعني أن هناك /new-message؟ و /new-topic؟ ولكن لا يوجد /new-reply؟

ربما يكون الأمر تافهاً، شكراً مقدماً على مساعدتكم!

يمكنك معرفة كيفية بناء طلبك من خلال الهندسة العكسية لـ Discourse API. ببساطة، افتح أداة فحص الشبكة، وانشر ردًا على موضوع، ثم راقب ما يحدث في الخلفية:

إعجاب واحد (1)

شكرًا جزيلاً لك @bartv
سأقوم بذلك الآن :slight_smile:

السؤال الوحيد هو: هل جميع الحقول إلزامية لإجراء استدعاء POST للرد؟ إنها كثيرة جدًا، وأعتقد أن بعض الحقول لا يمكن ملؤها ديناميكيًا من قبلي أو أنها عرضة للأخطاء! (مثل الحقل: id على سبيل المثال)

في Zapier على سبيل المثال، قمت مرة بإنشاء Webhook ناجح لنشر مواضيع باستخدام حقول البيانات تلك فقط

أشك في أن جميعها مطلوبة. فقط جربها :slight_smile:

إعجاب واحد (1)

فقط كمعلومة، الفشل ليس بسبب حقول البيانات بل بسبب CSRF سيئ.
انظر هنا:

@blake هل هذا يعني أنني بحاجة إلى تعيين api_username و api_key في الرأس (Header)؟

تقدّمي الحالي الذي يفشل:

3 إعجابات

نعم، ستحتاج إلى تعيين Api-Username و Api-Key في الرأس. تأكد من استبدال _ بـ -. ستحتاج أيضًا إلى إزالة بيانات الاعتماد من الجسم.

إعجابَين (2)

رائع، شكرًا جزيلاً لك @blake!
هذا هو الحل.

بالنسبة لشخص قضى ساعات في البحث عبر Google وSearch كما فعلتُ، فإن الحل هو:

إعجابَين (2)

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.