2

url次の jQuery ピースを使用して、サーブレットにパラメーターを送信しています。

$.getJSON("http://localhost:8080/JsoupPrj/JasonGen?url=" + url, function(data) {
    $("#content").html(data);
});

サーバー側では、サーブレットがパラメーターを取得します。そのために、次のようにコーディングしました。

String url = (String) request.getAttribute("url");

しかし、それは機能していません。どこが間違っているのか教えてもらえますか? パラメータをサーブレットに適切に渡していないと思います。サーブレットは JavaScript を介して毎回トリガーしますが、ブラウザーから渡されたパラメーターを認識していません。

4

1 に答える 1

3

ここ、

String url = (String) request.getAttribute("url");

リクエスト パラメータとしてではなく、リクエスト属性としてリクエストパラメータを取得しようとしています。これは明らかにあなたが望むことをしません。

リクエスト属性としてではなく、リクエストパラメータとしてリクエストパラメータを取得する必要があります。

String url = request.getParameter("url");

具体的な問題とは関係ありません:送信前にパラメーターを URL エンコードしていないようです。urlに特殊文字が含まれている場合、これとは関係のない別の問題が発生する可能性があります。JSencodeURIComponent()関数、または関数のdata引数を見てください$.getJSON()。その他のヒントについては、サーブレットと Ajax の使用方法も参照してください。

于 2012-08-24T16:13:28.607 に答える