Похоже, эта ошибка не была зафиксирована при посещении страницы /posts, браузер отображает пример по адресу Discourse Meta
В то время как всегда должно отображаться приложение с ошибкой, как при посещении https://meta.discourse.org/posts1
Похоже, эта ошибка не была зафиксирована при посещении страницы /posts, браузер отображает пример по адресу Discourse Meta
У меня открывается страница ошибки, когда я перехожу по вашей первой ссылке. Это происходит в конкретном браузере?
Проверил ссылку в режиме инкогнито Chrome, Firefox и Safari.
Когда я нажимаю на ссылку, у меня тоже появляется страница «Упс!». Но если я обновлю эту страницу или введу URL в новую вкладку, тогда она не работает.
Похоже, возвращается ошибка 406. Приложение Ember воспринимает её как 404, но при перезагрузке браузера сообщение об ошибке выглядит иначе.
В любом случае это ошибка, и в интерфейсе нет ссылок на этот URL, поэтому неясно, в чём именно заключается проблема.
Перепишите мой вопрос: почему при обращении к Discourse Meta как к несуществующей странице возвращается код 406 и пустая страница? Более уместными были бы код 404 и сообщение «Oops».
В панели Network инструментов разработчика Chrome я вижу ответ с кодом 406. Страницу «Oops» я вижу лишь изредка. Отображение страницы «Oops» было бы разумным.
Мой вопрос: независимо от типа ошибки, именно на приложении лежит ответственность за показ пользователю дружественного сообщения об ошибке (как это делает страница «Oops»), а не пустой страницы. Я предполагаю, что в случае ответа 406 само приложение даже не достигает цели. Это ошибка, сообщаемая службой, находящейся перед приложением, — например, веб-сервером или прокси-сервером.
Создало ли приложение ссылку, с которой у вас возникли проблемы?
Беглый взгляд на discourse/config/routes.rb at main · discourse/discourse · GitHub показывает, что это недействительный маршрут.
Если вы начинаете с недействительного маршрута, Rails не отправит вам всё приложение Ember, чтобы сообщить, что у вас неверный URL.
Похоже, я ошибался: https://meta.discourse.org/bananas загружает страницу «Ой». Вероятно, это потому, что /posts/:id/xxx является допустимым маршрутом.
Да. Именно так я и оказался на чистом URL /posts после удаления остальных параметров (но я забыл, где именно я видел страницу /posts/:id/xxx). Я считал, что /posts — это допустимый маршрут для всех постов пользователя. Возможно, это крайний случай, который Discourse не обрабатывает.
Я ожидал, что /posts вернёт все посты, но возвращать все посты в системе довольно бесполезно. Вы можете найти свои посты по адресу https://meta.discourse.org/my/activity.
В какой-то степени согласен. Возвращение пустой страницы через /posts — это ошибка в Discourse? Мне просто интересно, должно ли это быть так, но я не настаиваю на том, что эту проблему обязательно нужно исправить. Возможно, это стоит обсудить команде Discourse. ![]()
Помечаем это как pr-welcome, хотя это валидно, но имеет очень низкий приоритет.