This commit is contained in:
syuilo 2018-04-18 14:53:17 +09:00
parent 0e2bb5bddc
commit 772bc243af

View file

@ -1,3 +1,4 @@
import { MongoError } from 'mongodb';
import Note, { pack, INote } from '../../models/note'; import Note, { pack, INote } from '../../models/note';
import User, { isLocalUser, IUser, isRemoteUser } from '../../models/user'; import User, { isLocalUser, IUser, isRemoteUser } from '../../models/user';
import stream, { publishLocalTimelineStream, publishGlobalTimelineStream } from '../../publishers/stream'; import stream, { publishLocalTimelineStream, publishGlobalTimelineStream } from '../../publishers/stream';
@ -85,7 +86,18 @@ export default async (user: IUser, data: {
if (data.uri != null) insert.uri = data.uri; if (data.uri != null) insert.uri = data.uri;
// 投稿を作成 // 投稿を作成
const note = await Note.insert(insert); let note: INote;
try {
note = await Note.insert(insert);
} catch (e) {
// duplicate key error
if (e instanceof MongoError && e.code === 11000) {
return res(null);
}
console.error(e);
return rej('something happened');
}
res(note); res(note);