在尝试$ http.get到URL时获取错误,因为找不到页面(错误代码:404)

时间:2017-01-18 13:39:10

标签: grails grails-3.0

我的Grails 3.2.3应用程序正在端口9000上运行,我正在对网址GET发出/api/mail/getUnreadCount请求,但我收到了该网址的404错误。

我的URLMapping.groovy

get "/api/$controller(.$format)?"(action: "index")
get "/api/$controller/$id(.$format)?"(action: "show")

"/api/$controller/$action?/$id?(.$format)?" {
    constraints {
        // apply constraints here
    }
}

还帮助我,我们如何启用Grails URL映射日志?

更新1

class MailController {

    static allowedMethods = [index: "GET", getUnreadCount: "GET"]
    .....
    .......
    def getUnreadCount() {
        User currentUserInstance = springSecurityService.getCurrentUser()
        List counts = userService.getUnreadCounts(currentUserInstance)
        respond(counts)
    }
}

1 个答案:

答案 0 :(得分:1)

您希望在views / mail目录中有getUnreadCount.gsp来获取respond的输出

..对于您提供的代码,如果您没有任何视图,则应该Error 500而不是404。

在你的代码中,输入

  

格式:['xml','json']

或明确提及观点

  

查看:“showCount”

或尝试使用render方法

<强>更新

顺便说一句,请删除

get "/api/$controller/$id(.$format)?"(action: "show")

当您点击/ api / mail / getUnreadCount时,此映射会导致$id = getUnreadCount,并且您的控制器中没有任何操作show,这会产生 404 错误