1

RESTAPIにPlay2認証プラグインを使用しており、ログイン試行に対して200または403を返すだけです。

プラグインのコードは次のようになります。

public static Result loginAndRedirect(final Context context,
        final AuthUser loginUser) {
    storeUser(context.session(), loginUser);
    return Controller.redirect(getJumpUrl(context));
}

プラグインプロジェクトをフォークせずにリダイレクトを回避する方法はありますか?

4

2 に答える 2

1

私はちょうど同じシナリオでつまずきました.nico_ekitoが指摘したように、これは拡張PlayAuthenticate.Resolverしてオーバーライドすることで実現できます:

@Override
    public Call afterAuth() {
        return routes.Application.restAfterAuth();
    }

したがって、アプリの任意のルートを返すことができます。

于 2013-07-19T14:09:01.137 に答える
1

私はコントローラーでこれを処理することになりました:

public static Result login() {   
    Result r = MyUsernamePasswordAuthProvider.handleLogin(ctx());
    if (r instanceof Redirect && PlayAuthenticate.getUser(session()) != null) {
        return ok();
    }
    return forbidden();
}

ただし、これを行うためのより良い方法があるかもしれません。

于 2012-11-22T11:38:39.533 に答える