diff options
| author | syuilo <Syuilotan@yahoo.co.jp> | 2019-02-22 11:46:58 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-02-22 11:46:58 +0900 |
| commit | 2756f553c68082342a784ef716c62da6cea6f3ca (patch) | |
| tree | 1e0364ca9ddc1fd88e311f0687746f44e007effd /src/server/api/endpoints/users/recommendation.ts | |
| parent | Update CHANGELOG.md (diff) | |
| download | misskey-2756f553c68082342a784ef716c62da6cea6f3ca.tar.gz misskey-2756f553c68082342a784ef716c62da6cea6f3ca.tar.bz2 misskey-2756f553c68082342a784ef716c62da6cea6f3ca.zip | |
Improve error handling of API (#4345)
* wip
* wip
* wip
* Update attached_notes.ts
* wip
* Refactor
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* Update call.ts
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* wip
* :v:
* Fix
Diffstat (limited to 'src/server/api/endpoints/users/recommendation.ts')
| -rw-r--r-- | src/server/api/endpoints/users/recommendation.ts | 51 |
1 files changed, 25 insertions, 26 deletions
diff --git a/src/server/api/endpoints/users/recommendation.ts b/src/server/api/endpoints/users/recommendation.ts index e9f0107716..dc37bc56ba 100644 --- a/src/server/api/endpoints/users/recommendation.ts +++ b/src/server/api/endpoints/users/recommendation.ts @@ -32,7 +32,7 @@ export const meta = { } }; -export default define(meta, (ps, me) => new Promise(async (res, rej) => { +export default define(meta, async (ps, me) => { const instance = await fetchMeta(); if (instance.enableExternalUserRecommendation) { @@ -48,7 +48,7 @@ export default define(meta, (ps, me) => new Promise(async (res, rej) => { .replace('{{limit}}', limit.toString()) .replace('{{offset}}', offset.toString()); - request({ + const users = await request({ url: url, proxy: config.proxy, timeout: timeout, @@ -56,37 +56,36 @@ export default define(meta, (ps, me) => new Promise(async (res, rej) => { followRedirect: true, followAllRedirects: true }) - .then(body => convertUsers(body, me)) - .then(packed => res(packed)) - .catch(e => rej(e)); + .then(body => convertUsers(body, me)); + + return users; } else { // ID list of the user itself and other users who the user follows const followingIds = await getFriendIds(me._id); - // 隠すユーザーを取得 - const hideUserIds = await getHideUserIds(me); + // 隠すユーザーを取得 + const hideUserIds = await getHideUserIds(me); - const users = await User - .find({ - _id: { - $nin: followingIds.concat(hideUserIds) - }, - isLocked: { $ne: true }, - updatedAt: { - $gte: new Date(Date.now() - ms('7days')) - }, - host: null - }, { - limit: ps.limit, - skip: ps.offset, - sort: { - followersCount: -1 - } - }); + const users = await User.find({ + _id: { + $nin: followingIds.concat(hideUserIds) + }, + isLocked: { $ne: true }, + updatedAt: { + $gte: new Date(Date.now() - ms('7days')) + }, + host: null + }, { + limit: ps.limit, + skip: ps.offset, + sort: { + followersCount: -1 + } + }); - res(await Promise.all(users.map(user => pack(user, me, { detail: true })))); + return await Promise.all(users.map(user => pack(user, me, { detail: true }))); } -})); +}); type IRecommendUser = { name: string; |