Как я могу проверить, существует ли пользователь, прежде чем вызывать smooch.appUsers.get?

Я разрабатываю сервис, используя Smooch, используя пакет NPM smooch-core.

Прежде чем создать пользователя, я хочу проверить, существует ли этот конкретный идентификатор пользователя в моем приложении, и если нет, я хочу создать нового пользователя.

Вот мой код:

try {
      await this.smooch.appUsers.get(appId, userId);
    } catch (err) {
      await this.smooch.appUsers.create(appId, userId);
      await this.smooch.appUsers.get(appId, userId);
    }

Я всегда получаю ошибку 404, когда пытаюсь получить информацию о пользователе с несуществующим идентификатором (smooch.appUsers.get), что я не считаю хорошим способом.

Есть ли другой способ проверить, существует ли пользователь?

1 ответ

Решение

404 user_not_found это официально поддерживаемый способ узнать, когда пользователь не существует. Или вы можете позвонить appUsers.create не делая appUsers.get во-первых, и вы получите 409 conflict в случае, когда пользователь уже существует.

Обратите внимание, что призыв к .create возвращает созданного пользователя, поэтому вам не нужно делать секунду .get после этого (ссылаясь на фрагмент, который вы разместили)

Другие вопросы по тегам