如何使用 httparty ruby 中的 api 键获取 api 数据
How to get api data using api keys in httparty ruby
我一直在尝试使用 httparty 获取 api 数据并一直这样做
require 'httparty'
doc = HTTParty.get('http://ip-api.com/php/105.49.23.183')
puts doc['status']
api 响应是
a:14:{s:6:"status";s:7:"success";s:7:"country";s:5:"Kenya";s:11:"countryCode";s:2:"KE";s:6:"region";s:2:"30";s:10:"regionName";s:16:"Nairobi Province";s:4:"city";s:7:"Nairobi";s:3:"zip";s:5:"09831";s:3:"lat";d:-1.25909;s:3:"lon";d:36.7858;s:8:"timezone";s:14:"Africa/Nairobi";s:3:"isp";s:17:"Safaricom Limited";s:3:"org";s:3:"SFC";s:2:"as";s:25:"AS33771 Safaricom Limited";s:5:"query";s:13:"105.49.23.183";}
但是当我 运行 我的脚本的输出只是
status
但我需要它 return 响应 status
键的数据,即 success
。我不知道该怎么做。最初在 python 中此方法有效,但 ruby 不同
只需使用 JSON formatted API 端点:
require 'httparty'
doc = HTTParty.get('http://ip-api.com/json/105.49.23.183')
puts doc['status']
#=> "success"
请注意 json
而不是 URL 路径中的 php
。 serialized PHP 端点无论如何都已弃用。
我一直在尝试使用 httparty 获取 api 数据并一直这样做
require 'httparty'
doc = HTTParty.get('http://ip-api.com/php/105.49.23.183')
puts doc['status']
api 响应是
a:14:{s:6:"status";s:7:"success";s:7:"country";s:5:"Kenya";s:11:"countryCode";s:2:"KE";s:6:"region";s:2:"30";s:10:"regionName";s:16:"Nairobi Province";s:4:"city";s:7:"Nairobi";s:3:"zip";s:5:"09831";s:3:"lat";d:-1.25909;s:3:"lon";d:36.7858;s:8:"timezone";s:14:"Africa/Nairobi";s:3:"isp";s:17:"Safaricom Limited";s:3:"org";s:3:"SFC";s:2:"as";s:25:"AS33771 Safaricom Limited";s:5:"query";s:13:"105.49.23.183";}
但是当我 运行 我的脚本的输出只是
status
但我需要它 return 响应 status
键的数据,即 success
。我不知道该怎么做。最初在 python 中此方法有效,但 ruby 不同
只需使用 JSON formatted API 端点:
require 'httparty'
doc = HTTParty.get('http://ip-api.com/json/105.49.23.183')
puts doc['status']
#=> "success"
请注意 json
而不是 URL 路径中的 php
。 serialized PHP 端点无论如何都已弃用。