0

我正在从事一个 grails 项目,但我一生都无法弄清楚如何完成这项任务。基本上我有一个向控制器触发 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“Gone”消息。另外,如何访问服务器转发到的 URL (forward action:"list") ?

4

1 回答 1

0

您应该使用 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
于 2012-04-13T04:57:21.087 回答