小编Mig*_*uez的帖子

如何访问中间件rails 5中的params变量

我在使用 Rails 5 中的中间件时遇到问题,我试图POST通过在中间件中使用来操作 http中发送的参数,但在调用Rack::Request该函数之前,发送的参数不会被弹出。@app.call(env)

使用 byebug 访问变量envrequest得到以下结果:

 (byebug) env.each{|key, value| p "#{key} --> #{value}"}
 "rack.version --> [1, 3]"
 "rack.errors --> #<IO:0x007fa00209eaa8>"
 "rack.multithread --> true"
 "rack.multiprocess --> false"
 "rack.run_once --> false"
 "SCRIPT_NAME --> "
 "QUERY_STRING --> "
 "SERVER_PROTOCOL --> HTTP/1.1"
 "SERVER_SOFTWARE --> puma 3.6.2 Sleepy Sunday Serenity"
 "GATEWAY_INTERFACE --> CGI/1.2"
 "REQUEST_METHOD --> POST"
 "REQUEST_PATH --> /some_path"
 "REQUEST_URI --> /some_path"
 "HTTP_VERSION --> HTTP/1.1"
 "HTTP_CACHE_CONTROL --> no-cache"
 "HTTP_POSTMAN_TOKEN --> 5a8514ac-9050-433e-be71-80316aa01e53"
 "CONTENT_TYPE --> application/json" …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails rack-middleware ruby-on-rails-5

4
推荐指数
1
解决办法
3824
查看次数