【发布时间】:2018-09-20 13:51:36
【问题描述】:
旧 Rails 4.2.10 行:
post :show, "Some XML as String"
到 Rails 5.1.4
post :show, params: { ??? }
那么我在这里添加的键值对是什么?
编辑: 所以目前在测试中它是这样写的:
let(:logout_request_xml) { "<soap-env:Envelope xmlns:soap-env='http://schemas.xmlsoap.org/soap/envelope/'><soap-env:Body>...more stuff...</soap-env:Body></soap-env:Envelope>" }
...
post :show, logout_request_xml
【问题讨论】:
-
你试过
post :show, params: "Some XML as String"吗? -
是的,NoMethodError: undefined method `symbolize_keys' for "Some XML as String":String
-
你是如何在你的控制器中处理你的
"Some XML as String"的?params应该是一个哈希 -
我更详细地添加了它当前在 4.2.10 下的工作方式。
-
控制器用Nokogiri处理xml,通过request.body.read获取
标签: ruby-on-rails ruby-on-rails-4 rspec ruby-on-rails-5