再生からリダイレクトする際に問題が発生しました!形。私は問題が私がルートをどのように扱っているかにあると思う。ユーザーは、秘密鍵を使用したログインを使用してindex.hmtlを最初に実行するか、access_tokenを含む有効なパスに直接入力するか(qrコードリダイレクトを使用して)、dashboard.htmlにアクセスできるようにする必要があります。次のようにやろうとして何を - 私再生!フレームワークフォームリダイレクトが動作しない
は次のとおりです。
1)ログインのindex.htmlのフォームを使用して(ルート:ここApplication.index)
はindex.htmlの中にあります(私のフォームです):
<form action="@{Dashboard.authenticate()}" method="POST" name="login">
<input name="key" type="password" maxlength="128" value="${flash.key}">
<input class="button" id="btnLogin" type="submit" value="Login">
</form>
2)認証とダッシュボードへのリダイレクトard.html(ルート:Dashboard.dashboard)
public static void dashboard(String access_token) {
/*
...some code
*/
render(username);
}
public static void authenticate(String key) {
/*
...some code
*/
dashboard(access_token);
}
ここでは私のルートファイルされる:私のようなURL経由(文字列のaccess_tokenは)ダッシュボードに直接呼び出す場合
# Home page
GET / Application.index
POST /dashboard Dashboard.authenticate
GET /dashboard Dashboard.dashboard
ダッシュボードルートが正常に動作します: http://localhost:9000/dashboard?access_token=0000 しかし、私は認証(Stringキー)を呼び出すログインフォームを使用してログインしようとすると、このURLを取得しますhttp://localhost:9000/dashboard?access_token&key=1234ここでkeyはauth()関数に送られるvarです。明らかに私の欠点はルートにありますが、私は論理を試して試しましたが、私は100%確信しています。 私はPlay 1.2.4を使用しています 私はこの問題に2日を費やしており、どのような提案にも大変感謝しています。
あなたの助けをありがとうPereとWes :)上記の解決策を考え出す前に、私は結果なしであなたの提案を試しました。私がjQuery Mobileを使用していたという重要な情報を含めないようにすることで、あなたは全体の画像を持っていないが、私には間違いがある。再度、感謝します。 –