prax

prax

Uberauth failed on modified route

Hello All,

I have developed Rest API authentication using ueberauth , guardian and google auth provider.

Things are working as expected if I use the same route as specified in example.

  scope "/api/v0/auth/", ApiGateway do
    pipe_through :api

    get   "/:provider",           AuthController, :request

    get   "/:provider/callback",  AuthController, :callback
    post  "/:provider/callback",  AuthController, :callback

end

But If I modify the route to -

  scope "/api/v0/auth/", ApiGateway do
    pipe_through :api

    get   "/persons/oauth/:provider",   AuthController, :request

    get   "/:provider/callback",  AuthController, :callback
    post  "/:provider/callback",  AuthController, :callback

end

Then getting crash on console stating :

09:07:17.724 request_id=FnxdBAD6grgL04QAAMil [info] GET /api/v0/auth/persons/oauth/google
09:07:17.726 request_id=FnxdBAD6grgL04QAAMil [debug] Processing with ApiGateway.AuthController.request/2
  Parameters: %{"provider" => "google"}
  Pipelines: [:api]
09:07:17.731 request_id=FnxdBAD6grgL04QAAMil [debug] Plug.Session could not verify incoming session cookie. This may happen when the session settings change or a stale cookie is sent.
09:07:17.735 request_id=FnxdBAD6grgL04QAAMil [info] Sent 500 in 11ms
09:07:17.736 [error] #PID<0.7002.0> running ApiGateway.Endpoint (connection #PID<0.6994.0>, stream id 3) terminated
Server: localhost:4000 (http)
Request: GET /api/v0/auth/persons/oauth/google
** (exit) an exception was raised:
    ** (RuntimeError) expected action/2 to return a Plug.Conn, all plugs must receive a connection (conn) and return a connection, got: nil
        (api_gateway 0.1.0) lib/api_gateway/controllers/auth_controller.ex:1: ApiGateway.AuthController.phoenix_controller_pipeline/2
        (phoenix 1.5.8) lib/phoenix/router.ex:352: Phoenix.Router.__call__/2
        (api_gateway 0.1.0) lib/api_gateway/endpoint.ex:1: ApiGateway.Endpoint.plug_builder_call/2
        (api_gateway 0.1.0) lib/plug/debugger.ex:136: ApiGateway.Endpoint."call (overridable 3)"/2
        (api_gateway 0.1.0) lib/api_gateway/endpoint.ex:1: ApiGateway.Endpoint.call/2
        (phoenix 1.5.8) lib/phoenix/endpoint/cowboy2_handler.ex:65: Phoenix.Endpoint.Cowboy2Handler.init/4
        (cowboy 2.8.0) /home/prakash/git/nebula/deps/cowboy/src/cowboy_handler.erl:37: :cowboy_handler.execute/2
        (cowboy 2.8.0) /home/prakash/git/nebula/deps/cowboy/src/cowboy_stream_h.erl:300: :cowboy_stream_h.execute/3
 
nil

Does anyone have Idea what’s wrong here ?

Thanks! :smiley:

Where Next?

Popular in Questions Top

Fl4m3Ph03n1x
Background Let’s assume I have a typical GenServer that receives messages as requests, does some operation in a DB and returns responses....
New
9mm
I am constructing a JSON object (map) and I need to conditionally set a field. I’m trying to write proper elixir-way code… and I’m at a l...
New
fireproofsocks
I’m working on defining a simple Ecto schema for a table (in PostGres), but I don’t see where I can define a column as NOT NULL. Conside...
New
shahryarjb
Hello, I get Persian date from my client and convert it to normal calendar like this: def jalali_string_to_miladi_english_number(persi...
New
srinivasu
How to handle excepions in elixir? Suppose i have A, B, C ,D, E modules. and each module has get() function. A.get() method will call th...
New
pmjoe
I have a relationship of love and hate with Elixir. Lots of things are just absolutely right, but there are some things that are kind of ...
New
albydarned
Hello all! I am typing this post from my new MacBook Pro with the M1 chip. I’m loving it so far, and will probably use it as my daily dr...
New
LegitStack
I’m trying to make a websocket server in Phoenix or raw Elixir. I heard about gun, I think I could use cowboy, but since I’m not that sma...
New
electic
Hi, I am new to Elixir. I am trying to use the DateTime component to insert a date into MySQL however the there seems to be no way to fo...
New
Mooodi
Given a string, how can I get access to its character by index? Enum.at("my_string", 2) doesn't work. Or rather, not char, but a substr...
New

Other popular topics Top

lanycrost
Hi everyone! I need implement if…else if…else condition from my elixir code, and anymore of this control flow structures not work proper...
New
senggen
Erlang/OTP 25 [erts-13.2.2] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] 15:22:35.803 [error] gen_event {lager_file_backend...
New
yurko
Here are few pieces of (common) Linux knowledge that we use for reasonably small one server apps. We use Ubuntu but this should work for ...
New
dotdotdotPaul
Okay, I'm having a heck of a time trying to figure out how to best handle the validation of belongs_to associations in Ecto. I'm sure I'...
New
yawaramin
In the Dialyzer docs ( http://erlang.org/doc/man/dialyzer.html#requesting-or-suppressing-warnings-in-source-files ), there is a way to tu...
New
axelson
This post is a wiki (feel free to hit the edit button near the bottom right of this post to add your own changes!) This post collects co...
239 45766 226
New
grych
Hi folks, Few months ago I have announced the proof-of-concept of the library to manipulate the browsers DOM objects directly from Elixi...
639 49522 488
New
alice
Hey, Just curious what are the main benefits of Elixir compared to Clojure? When is Elixir more useful than Clojure and vice versa? Th...
New
Nvim
Elixir appears to be a superior language to Python. I don’t see any advantage of Python over Elixir. Are there any?
New
magnetic
Hey :wave:t3: Elixir community, I’ve been learning Elixir, and working on some side projects. My editor of choice is VSCode, and althoug...
New

We're in Beta

About us Mission Statement