Если я вызываю user-api-key/new с auth_redirect, который уже содержит строку запроса (например, http://localhost:30120/auth-discourse?state=BASE64), то в результате перенаправление происходит по URI вида http://localhost:30120/auth-discourse?state=BASE64?payload=PAYLOAD — две строки запроса без добавления &.
Этот код, возможно, следует изменить, чтобы он проверял наличие строки запроса в URI, либо, возможно, использовать какой-либо конструктор URI?
Похоже, что предположение, заложенное в коде, заключается в том, что в нём уже нет никаких параметров запроса. Мы будем рады получить PR для исправления этого.