class Ip2proxyWebService
Attributes
ws_api_key[RW]
ws_package[RW]
ws_use_ssl[RW]
Public Class Methods
new(api_key, package, use_ssl)
click to toggle source
# File lib/ip2proxy_ruby.rb, line 479 def initialize(api_key, package, use_ssl) if !api_key.match(/^[0-9A-Z]{10}$/) && api_key != 'demo' raise Exception.new "Please provide a valid IP2Proxy web service API key." end if !package.match(/^PX[0-9]+$/) package = 'PX1' end if use_ssl == '' use_ssl = true end self.ws_api_key = api_key self.ws_package = package self.ws_use_ssl = use_ssl end
Public Instance Methods
get_credit()
click to toggle source
# File lib/ip2proxy_ruby.rb, line 510 def get_credit() if self.ws_use_ssl response = Net::HTTP.get(URI("https://api.ip2proxy.com/?key=" + self.ws_api_key + "&check=true")) else response = Net::HTTP.get(URI("http://api.ip2proxy.com/?key=" + self.ws_api_key + "&check=true")) end parsed_response = JSON.parse(response) if parsed_response.nil? return 0 end if parsed_response["response"].nil? return 0 end return parsed_response["response"] end
lookup(ip)
click to toggle source
# File lib/ip2proxy_ruby.rb, line 494 def lookup(ip) if self.ws_use_ssl response = Net::HTTP.get(URI("https://api.ip2proxy.com/?key=" + self.ws_api_key + "&ip=" + ip + "&package=" + self.ws_package + "&format=json")) else response = Net::HTTP.get(URI("http://api.ip2proxy.com/?key=" + self.ws_api_key + "&ip=" + ip + "&package=" + self.ws_package + "&format=json")) end parsed_response = JSON.parse(response) if parsed_response.nil? return false end if parsed_response["response"] != "OK" raise Exception.new "Error: " + parsed_response["response"] end return parsed_response end