From 1cdd602a9f6ecf5a71cd5fe2a329edba1212ece8 Mon Sep 17 00:00:00 2001 From: bihlink <95501288+bihlink@users.noreply.github.com> Date: Wed, 6 Jul 2022 00:23:20 +0200 Subject: [PATCH] Update index.js --- index.js | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/index.js b/index.js index fe22c01..d199273 100644 --- a/index.js +++ b/index.js @@ -8,6 +8,7 @@ var request = require('request'); var cors = require('cors'); var errorPage = require('./lib/errorPage'); var morgan = require('morgan'); +var { detector } = require('megalodon'); var app = Express(); @@ -59,11 +60,23 @@ app.get('/apiv2/feed',cors(),logger,function(req,res){ // get feed url var userUrl = req.query.userurl; - if (!userUrl){ - res.status(400); - res.send(errorPage(400,'You need to specify a user URL')); - return; - } + + if (userUrl === "" || userUrl === undefined) { + const user = req.query.user; + const instance = req.query.instance; + if (type === "" || type === undefined) { + type = await detector(instance).catch(() => ""); + } + if (type === "mastodon" || type === "pleroma") + userUrl = instance + "/users/" + user; + else if (type === "misskey") userUrl = instance + "/@" + user; + else if (type === "wordpress") userUrl = instance + "/author/" + user; + else { + res + .status(400) + .send(errorPage(400, "You need to specify a user URL", null)); + return; + } var feedUrl = req.query.feedurl;