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
* ✌️
* Fix
This commit is contained in:
@ -6,6 +6,7 @@ import UserList from '../../../../models/user-list';
|
||||
import define from '../../define';
|
||||
import { getFriends } from '../../common/get-friends';
|
||||
import { getHideUserIds } from '../../common/get-hide-users';
|
||||
import { ApiError } from '../../error';
|
||||
|
||||
export const meta = {
|
||||
desc: {
|
||||
@ -99,10 +100,18 @@ export const meta = {
|
||||
'ja-JP': 'true にすると、ファイルが添付された投稿だけ取得します (このパラメータは廃止予定です。代わりに withFiles を使ってください。)'
|
||||
}
|
||||
},
|
||||
},
|
||||
|
||||
errors: {
|
||||
noSuchList: {
|
||||
message: 'No such list.',
|
||||
code: 'NO_SUCH_LIST',
|
||||
id: '8fb1fbd5-e476-4c37-9fb0-43d55b63a2ff'
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
export default define(meta, (ps, user) => new Promise(async (res, rej) => {
|
||||
export default define(meta, async (ps, user) => {
|
||||
const [list, followings, hideUserIds] = await Promise.all([
|
||||
// リストを取得
|
||||
// Fetch the list
|
||||
@ -120,13 +129,11 @@ export default define(meta, (ps, user) => new Promise(async (res, rej) => {
|
||||
]);
|
||||
|
||||
if (list == null) {
|
||||
rej('list not found');
|
||||
return;
|
||||
throw new ApiError(meta.errors.noSuchList);
|
||||
}
|
||||
|
||||
if (list.userIds.length == 0) {
|
||||
res([]);
|
||||
return;
|
||||
return [];
|
||||
}
|
||||
|
||||
//#region Construct query
|
||||
@ -274,13 +281,10 @@ export default define(meta, (ps, user) => new Promise(async (res, rej) => {
|
||||
}
|
||||
//#endregion
|
||||
|
||||
// Issue query
|
||||
const timeline = await Note
|
||||
.find(query, {
|
||||
limit: ps.limit,
|
||||
sort: sort
|
||||
});
|
||||
const timeline = await Note.find(query, {
|
||||
limit: ps.limit,
|
||||
sort: sort
|
||||
});
|
||||
|
||||
// Serialize
|
||||
res(await packMany(timeline, user));
|
||||
}));
|
||||
return await packMany(timeline, user);
|
||||
});
|
||||
|
Reference in New Issue
Block a user