0

SPRING SECURITY LOGIN FORMこれは login.jsp です。つまり、http://localhost:8082/Spring-MVC/login.jsp です。

<form name='f' action="<c:url value='j_spring_security_check' />"
        method='POST'>

        <table>
            <tr>
                <td>User:</td>
                <td><input type='text' name='j_username' value=''>
                </td>
            </tr>
            <tr>
                <td>Password:</td>
                <td><input type='password' name='j_password' />
                </td>
            </tr>
            <tr>
                <td colspan='2'><input name="submit" type="submit"
                    value="submit" />
                </td>
            </tr>
            <tr>
                <td colspan='2'><input name="reset" type="reset" />
                </td>
            </tr>
        </table>

    </form>

上記の投稿フォーム メソッドと同等の JSP コード、

<%  HttpClient httpClient = new HttpClient();
            PostMethod postMethod = new PostMethod("http://localhost:8082/SpringMVC/j_spring_security_check");
            postMethod.addParameter("j_username", "mkyong");
            postMethod.addParameter("j_password", "123456");
            try {
                httpClient.executeMethod(postMethod);
            } catch (HttpException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }

            if (postMethod.getStatusCode() == HttpStatus.SC_OK) {
                String resp = postMethod.getResponseBodyAsString();
            } else {
                 //...postMethod.getStatusLine();
            }
            %>

実際には、どちらも同じ結果になると考えていますが、2 番目のケースでは post メソッドを使用してもホームページにリダイレクトされません。上記のフォーム送信を httpclient コードを使用して自動化したいと考えています。これで私を助けてください

4

1 に答える 1

0

ポストリクエストでJSPからセッションを伝播していないため、スローアウェイリクエストを認証フィルターに送信しています

于 2012-05-01T19:37:48.393 に答える