Как я могу сделать так, чтобы я отправлял запрос GET в api / events и получал только публичные события, но если я отправляю токен аутентификации, то я получаю события пользователя?
В основном, используя тот же маршрут, но возвращая что-то другое, если вошел пользователь.
Я считаю, что это должно что-то делать с маршрутизатором, если я отправлю только в / api scope, у него никогда не будет пользователя, но если я отправлю [: api,: jwt_authenticated] без токена, то это, очевидно, говорит, что я не вошли в.
Я пытался сделать отдельное определение для возврата, если не вошел в систему, но тот же результат
scope "/api", DotooAppWeb do
pipe_through(:api)
get("/users", UserController, :index_not_logged)
post("/users", UserController, :create)
get("/events", EventController, :index_not_logged)
scope "/auth" do
post("/identity/callback", AuthenticationController, :identity_callback)
end
pipe_through(:jwt_authenticated)
resources("/users", UserController, only: [:index, :create, :show, :update, :delete])
resources("/events", EventController, only: [:index, :create, :show, :update, :delete])
end
Есть ли способ обойти это?
Я следовал этой статье в основном для настройки моей аутентификации: http://blog.nathansplace.co.uk/2018/ueberauth-and-guardian