小编Car*_*rra的帖子

如何避免法拉第请求编码获取参数?

我有以下代码

conn = Faraday.new(:url => 'http://www.mapquestapi.com') do |faraday|
 faraday.response :logger                  # log requests to STDOUT
 faraday.adapter  Faraday.default_adapter  # make requests with Net::HTTP
 faraday.options.params_encoder = Faraday::FlatParamsEncoder
end

response = conn.get do |req|
   req.url '/geocoding/v1/batch'
   req.params['key'] = 'xxxxx%7xxxxxxxxx%2xxxx%3xxxx-xxxx'
   req.params['location'] = addresses[0]
end
Run Code Online (Sandbox Code Playgroud)

不幸的是,关键 PARAM编码为显示在日志中这样的关键= XXXXX%257xxxxxxxxx%252xxxx%253xxxx-XXXX,造成了Mapquest服务API响应与无效键(由于编码,因为我与邮差试图和它的工作原理)

I, [2014-01-22T19:16:17.949640 #93669]  INFO -- : get http://www.mapquestapi.com/geocoding/v1/batch?key=xxxxx%257xxxxxxxxx%252xxxx%253xxxx-xxxx&location=1047+East+40th+Avenue%2C+Vancouver%2C+BC+V5W+1M5%2C+Canada
D, [2014-01-22T19:16:17.949778 #93669] DEBUG -- request: User-Agent: "Faraday v0.9.0"
accept-encoding: ""
I, [2014-01-22T19:16:19.038914 #93669]  INFO -- Status: 200
D, [2014-01-22T19:16:19.039043 #93669] DEBUG -- response: server: "Apache-Coyote/1.1" …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails mapquest faraday

7
推荐指数
1
解决办法
3416
查看次数

标签 统计

faraday ×1

mapquest ×1

ruby ×1

ruby-on-rails ×1