【问题标题】:Is Grails missing support for http OPTIONS requests?Grails 是否缺少对 http OPTIONS 请求的支持?
【发布时间】:2013-09-16 04:48:31
【问题描述】:

当我在下面创建 grails 2.2.4 应用程序时,我看到对POST /options/somewhere 的响应,但没有OPTIONS /options/somewhere 的响应。

有什么方法可以对 OPTIONS 请求调用控制器操作吗?


POST 有效而 OPTIONS 无效的应用:

$ grails create-app options
$ grails create-controller api

UrlMappings.groovy

class UrlMappings {
  static mappings = {
    "/somewhere" (controller: "api", parseRequest: true) {
      action = [OPTIONS: "getOptions", POST: "saveStuff"]
    } 
  } 
}

ApiController.groovy

package options

class ApiController {
    def getOptions() {
      render("Your options await.")
    }
    def saveStuff() {
      render("Stuff saved.")
    }
}

【问题讨论】:

    标签: http grails url-mapping http-options-method


    【解决方案1】:

    试试这个代码:

     "/somewhere" (controller: "api", parseRequest: true) { //controller name begins with a lowercase letter
            action = [OPTIONS: "getOptions", POST: "saveStuff"]
        }
    

    我使用 grails 2.0.3,但它没有按预期工作。但应该适用于最新的 grails 版本(2.3)。请查看相关bug

    【讨论】:

    • 应该的。我需要有关您的申请的更多信息。你能提供你的控制器代码和实际的请求网址吗?
    • 我已经更新了我的问题,以明确这一点。您能否确认这确实适合您?
    • 我一到工作就试试=)
    猜你喜欢
    • 2014-05-13
    • 2018-07-03
    • 1970-01-01
    • 2014-11-15
    • 2014-08-12
    • 2016-07-17
    • 2018-07-27
    • 2019-06-17
    • 1970-01-01
    相关资源
    最近更新 更多