تشغيل النسخ الاحتياطي مع التحميلات عبر الـ API لا يشمل التحميلات

مرحبًا،

أنا ألعب قليلاً مع تشغيل إنشاء نسخ احتياطية لـ Discourse عبر واجهة برمجة التطبيقات (API).

لاحظت أمرًا غريبًا، حيث يبدو أن النسخ الاحتياطي لا يتضمن الملفات المرفقة. عند التشغيل عبر واجهة برمجة التطبيقات، يكون حجم النسخة الاحتياطية 140 ميجابايت. أما عند تشغيلها عبر زر النسخ الاحتياطي، فيكون الحجم 330 ميجابايت.

أقوم بتشغيل النسخة الاحتياطية بالأمر التالي:

curl -XPOST -H 'Content-Type: application/json' "https://talk.rhein-spree.com/admin/backups.json?api_key=mykey&api_username=sebastian" -d '{ "with_uploads": true }'

هل أقوم بشيء خاطئ أم أن هناك خللاً في النسخ الاحتياطية التي يتم تشغيلها عبر واجهة برمجة التطبيقات؟

You should send it as form data instead of JSON. That works.

curl --request POST \
  --url http://example.com/admin/backups.json \
  --header 'content-type: application/x-www-form-urlencoded' \
  --data 'api_key=<api_key>&api_username=<username>&with_uploads=true'