0
サーブレットにajaxリクエストを送信するjqueryスクリプトがあります。正常にサーブレットにテキストデータを投稿しますが、成功関数の代わりにエラー関数を呼び出します(サーブレットはajax nullに戻ってサーブレットを返します)文字列)。なぜajaxメソッドがエラー関数を呼び出すのですか?
なぜajaxメソッドがエラー関数を呼び出すのですか?
はここでここでサーブレット
public class LoginServlet extends HttpServlet {
@Override
public void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
PrintWriter out = response.getWriter();
String login = request.getParameter("login");
String password = request.getParameter("password");
SocketConnection.output.println("log_in " + login + " " + password);
out.print(SocketConnection.input.readLine());
out.close();
}
}
textStatus値がerror
でのコードだスクリプト
$(document).ready(function() {
$("#login-button").click(function() {
var userPassword = $("input#userPassword").val();
var userLogin = $("input#userLogin").val();
$.ajax({
type: "POST",
url: "http://localhost:8181/library/login",
data: {login: userLogin, password: userPassword},
dataType: "text",
success: function (data) {
if (data == "1") {
document.location.href = "http://localhost:8181/library/workshop.html";
}
if (data == "2") {
document.location.href = "http://localhost:8181/library/library.html";
}
},
error: function (jqXHR, textStatus, errorThrown) {
alert("Error report\n" + "jqXHR = " + jqXHR + "\n" + "textStatus = " + textStatus + "\n" +
"errorThrown = " + errorThrown);
}
});
});
});
のコードだ、errorThrown値は、エラーレポートで、無効です。
'SocketConnection.output'は、データベースに接続するアプリケーションとの接続の内部ロジックを保存します。 –
データ型(テキスト)が正しいことを確認してください - "text":プレーンテキスト文字列です。サーバから来るものが実際には文字列であることを証明するのに役立ちます – Tasos
'SocketConnection.input.readLine()'は 'string'を返し、' ajax'のデータ型として 'xml'、' json'、スクリプト '、' html'と 'text'です。私は、 'java'は' text'による 'String'か、それとも正しいのでしょうか? –