diff --git a/index.js b/index.js index d0f2fb8..16181a1 100644 --- a/index.js +++ b/index.js @@ -150,8 +150,12 @@ export default class ActivityPubEndpoint { const self = this; // Let Fedify handle NodeInfo data (/nodeinfo/2.1) + // Only pass GET/HEAD requests — POST/PUT/DELETE must not go through + // Fedify here, because fromExpressRequest() consumes the body stream, + // breaking Express body-parsed routes downstream (e.g. admin forms). router.use((req, res, next) => { if (!self._fedifyMiddleware) return next(); + if (req.method !== "GET" && req.method !== "HEAD") return next(); return self._fedifyMiddleware(req, res, next); }); diff --git a/package.json b/package.json index ff82906..ad365b9 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@rmdes/indiekit-endpoint-activitypub", - "version": "1.0.2", + "version": "1.0.3", "description": "ActivityPub federation endpoint for Indiekit via Fedify. Adds full fediverse support: actor, inbox, outbox, followers, following, syndication, and Mastodon migration.", "keywords": [ "indiekit",