从 grails 和 ajax 中的 jqXhR 获取自定义错误消息和重定向 URL



我正在做一个圣杯项目,一辈子都想不出如何完成这项任务。 基本上,我有一个向控制器发出ajax请求的页面。 然后,控制器检查资源是否有效,并向客户端发送回 410,暗示资源已消失。 然后,客户端打开一个 jquery 对话框,并告诉用户他将被重定向,因为资源无效。这是我用来执行此操作的代码:

response.setStatus(410, message)
   def message =message(code:'default.listing.expired.message', args:[email]).toString()
    response.setStatus(410, message)
    forward action:"list"
    return

所以我希望在我做jqXHR.statusText时看到我的客户消息,但我只是收到股票HTTP"消失"消息。 另外,如何访问服务器转发到的 URL(转发操作:"列表")?

您应该使用 JSON(或 XML,或任何您可以在客户端轻松读取的内容)进行响应,请尝试:

response.setStatus(410) //set response status
def data = [
  message: message(code:'default.listing.expired.message', args:[email]).toString(),
  link: createLinkTo(action: 'list')
]
render(data as JSON) //send response data as JSON

相关内容

最新更新