会话#new

时间:2015-08-05 20:57:53

标签: ruby-on-rails curl devise

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

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

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

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

  

会话#new:

中发生了ActionController :: UnknownFormat

的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 root:/ home / deploy / rails / XXX
  • 流程:9618

会话:

  • 会话ID:nil
  • 数据:#

环境:

  • 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:GET
  • 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:Unicorn 4.8.3
  

块引用

1 个答案:

答案 0 :(得分:1)

Accept标题存在问题(在客户端)。

您可以使用-H选项模拟它:

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

不需要action=new&controller=sessions部分:您的路线会填写参数。