【问题标题】:Why is ajax always returning a fail?为什么ajax总是返回失败?
【发布时间】:2016-02-23 21:46:01
【问题描述】:

我的 ajax 函数如下:

$.post({
    url: "login",
    data: {
        nomutilisateur: nomutilisateur,
        motdepasseutilisateur: motdepasseutilisateur
    }       
}).done(function() {
    console.log("Success");
}).fail(function() {
    console.log("Fail");
})

我总是得到失败日志;即使我的 java 类中的执行函数也只返回“成功”。

这是我的执行方法:

public String execute() {
    if (dao.validCredentials(nomutilisateur, motdepasseutilisateur)) {
        System.out.println("USER FOUND");
    }
    return "success";
}

我做错了什么?

【问题讨论】:

  • 检查你的控制台 - 你得到一个 404 吗?
  • 不,我的 java 控制台中有日志“USER FOUND”,所以我知道该函数已被调用并且正在工作
  • 了解更多错误的好方法是显示错误,而不是记录“失败”request.fail(function( jqXHR, textStatus ,errorText) { console.log( "Request failed: " + textStatus , "Error: " + errorText); });
  • 您在浏览器的网络标签中看到了什么?
  • @SLaks 这很有趣。我的网络标签中出现与我的帖子相关的 404 错误

标签: java jquery ajax


【解决方案1】:

找到正确的方法:

@Action("/login")
@ParentPackage("json-default")
@Result(type = "json", params = { "includeProperties", "msg" })
public class Login extends ActionSupport {
private static final long serialVersionUID = 1L;
private String nomutilisateur;
private String motdepasseutilisateur;

private String msg;

@Autowired
private Dao dao;

public String execute() {
    if (dao.validCredentials(nomutilisateur, motdepasseutilisateur)) {
        System.out.println("USER FOUND");
    }
    msg = "success";
    return ActionSupport.SUCCESS;
}

【讨论】:

  • 那么,修复了哪些更改?使用msg?
  • 不,这都是关于 Json 的东西(父包和结果类型) 还不确定完全理解为什么。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-28
  • 1970-01-01
  • 1970-01-01
  • 2018-05-22
  • 2021-12-27
  • 1970-01-01
相关资源
最近更新 更多