Also, do you think setting a flash variable is the best way to force a permission dialog? The alternative is to add a parameter to the auth URL. e.g. /auth/spotify/?show_dialog=true.
These auth parameters are usually used to carry an application state through the authorization sequence on the redirect URL. However Spotify is one provider that requires the redirect URL sent in the request and callback phases to exactly match, including the query string, so this gem's code doesn't include any auth parameters in the callback URL it sends. This makes auth parameters available to be used for another purpose, such as for additional authentication request parameters. So there's a trade-off between the neatness and framework-independence of the parameter approach and this approach's non-standard use of the auth query string.
Thanks Claudio for merging.
Rechecking, I found these typos in README.md.
Also, do you think setting a flash variable is the best way to force a permission dialog? The alternative is to add a parameter to the auth URL. e.g.
/auth/spotify/?show_dialog=true
.These auth parameters are usually used to carry an application state through the authorization sequence on the redirect URL. However Spotify is one provider that requires the redirect URL sent in the request and callback phases to exactly match, including the query string, so this gem's code doesn't include any auth parameters in the callback URL it sends. This makes auth parameters available to be used for another purpose, such as for additional authentication request parameters. So there's a trade-off between the neatness and framework-independence of the parameter approach and this approach's non-standard use of the auth query string.