Поддержка параметров tl=[lang] в REST API (для неанонимных пользователей)

В нашем случае мы пытаемся получить локализованные посты из закрытых категорий нашего форума.

Было бы отличным дополнением для REST API поддержка параметра ?tl=en для получения переведённой версии обработанного поста.

В настоящее время параметр tl работает только для анонимных пользователей.

2 лайка

В целом, если вы хотите узнать об API, самый быстрый способ — провести реверс-инжиниринг API Discourse

1 лайк

У меня это уже работает, например, текущая тема с .json?tl=fr возвращает правильный ответ — обратите внимание, что поле cooked на французском языке:

Пост был разделен на новую тему: Tl=языковой краулер не показывает посты на языке

Я попробовал именно это через конечную точку /posts/id.json, но получил только оригинальную версию в cooked.

Не могли бы вы проверить на своей стороне? https://meta.discourse.org/posts/1887991.json?tl=fr

Эта конечная точка работает у меня, она возвращает обработанный текст на французском. Если я переключаюсь на tl=es, возвращается обработанный текст на испанском.

Вы вызываете эти эндпоинты от имени конкретного пользователя? С моей стороны запросы отправляются анонимно.

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

1 лайк

Параметр tl работает только для анонимов.

3 лайка

Спасибо за подтверждение! Тогда я отредактирую первый пост, чтобы превратить его в запрос на добавление функции.