lua-resty-openidc
lua-resty-openidc copied to clipboard
session.present vs session == nil
Hi. While working with lua-resty-openidc, I encountered the "request to the redirect_uri path but there's no session state found" error. I added some logs to the source code and realized that the session.present in the line returns false. Then, I added the session variable in the logs and found that it is present. How is it possible? I tried to comment out that if block and after that it reached this line and then returned false. The question is what is the difference between session.present and session == nil that is in this line?
Environment
- lua-resty-openidc version (e.g. 1.7.5)
- OpenID Connect provider (custom OP)
Expected behaviour
session.present returns true when session is not null.
Actual behaviour
session.present returns false even if session == nil was false above.
You've probably done what I just spent 5 hours troubleshooting..
lua-resty-session needs to be fixed at version 3.10 or lower. Default pulling latest will now work and this error was exactly what I experienced.
I think there is an inconsistency in the modules lua-resty-openidc and lua-resty-session because now I encountered a new error. That is in this line, I don't find any method with the name regenerate in lua-resty-session version 4-0-5.
You've probably done what I just spent 5 hours troubleshooting..
lua-resty-session needs to be fixed at version 3.10 or lower. Default pulling latest will now work and this error was exactly what I experienced.
That's exactly why it can't find regenerate.
Thanks.
There is now release 1.8.0 of lua-resty-openidc, which works with lua-resty-session >= 4.0.3. You can give it a try.