【问题标题】:An ActionController::UnknownFormat occurred in sessions#new会话中发生 ActionController::UnknownFormat#new
【发布时间】:2015-10-28 19:55:42
【问题描述】:

我通过发送电子邮件的异常通知 gem 收到我的 rails 应用程序的以下错误。

该应用已设计用于身份验证,并且有一个 /users/sign_in 路径 www.example.com(假)域不是我们的,但由于某种原因,它在导致异常的路径上对我们的应用程序发出 get 请求。我可以访问我们应用程序的 /users/sign_in 路径,我会看到登录页面。我们最近更改了 isp 并收到了一个新的 ip,可能某处的 dns 配置尚未更新,并且正在将另一个域发送到我们的 ip。我试图通过使用以下参数向开发中的应用程序发出 curl get 请求来在本地模拟错误,但也返回登录页面的 html(无异常)。

curl GET "http://localhost:3000/users/sign_in/?action=new&controller=sessions"

我的问题是如何使用 curl(或任何其他方式)模拟此错误?

会话中发生 ActionController::UnknownFormat#new:

ActionController::UnknownFormat


请求:

  • 网址:http://www.example.com/users/sign_in
  • HTTP 方法:GET
  • IP地址:XXX.XXX.XXX.XXX
  • 参数:{"action"=>"new", "controller"=>"sessions"}
  • 时间戳:05/08/2015 06:20
  • 服务器:XXX
  • Rails 根目录:/home/deploy/rails/XXX
  • 进程:9618

会话:

  • 会话 ID:无
  • 数据:#

环境:

  • HTTP_ACCEPT:接受:/
  • HTTP_CONNECTION:关闭
  • HTTP_HOST : www.example.com
  • HTTP_REFERER:http://www.example.com/
  • HTTP_USER_AGENT:Mozilla/4.0(兼容;MSIE 8.0;Windows NT 5.1;Trident/4.0;WebSaver;.NET CLR 2.0.50727)
  • HTTP_VERSION : HTTP/1.0
  • HTTP_X_FORWARDED_FOR : XXX.XXX.XXX.XXX, XXX.XXX.XXX.XXX
  • HTTP_X_FORWARDED_PROTO : http
  • ORIGINAL_FULLPATH : /users/sign_in
  • ORIGINAL_SCRIPT_NAME:
  • PATH_INFO:/users/sign_in
  • QUERY_STRING:
  • REMOTE_ADDR : 127.0.0.1
  • REQUEST_METHOD:获取
  • REQUEST_PATH : /users/sign_in
  • REQUEST_URI : /users/sign_in
  • ROUTES_51525820_SCRIPT_NAME:
  • SCRIPT_NAME:
  • SERVER_NAME : www.example.com
  • SERVER_PORT:80
  • SERVER_PROTOCOL:HTTP/1.0
  • SERVER_SOFTWARE:独角兽 4.8.3

块引用

【问题讨论】:

    标签: ruby-on-rails curl devise


    【解决方案1】:

    Accept 标头有问题(在客户端)。

    你可以用-H选项模拟它:

    curl -XGET -H "Accept: /" "http://localhost:3000/users/sign_in/"
    

    不需要action=new&controller=sessions部分:参数由你的路由填写。

    【讨论】:

    • 谢谢@EugZol,只是古玩-它不会抛出同样的异常。 ActionController::UnknownFormat actionpack (4.1.12) lib/action_controller/metal/mime_responds.rb, line 440
    猜你喜欢
    • 1970-01-01
    • 2022-01-14
    • 2014-05-21
    • 1970-01-01
    • 2013-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多