class Ltp::Cloud::Sdk::Client

Constants

END_POINT

Attributes

api_key[RW]

Public Class Methods

new(api_key) click to toggle source
# File lib/ltp/cloud/sdk/client.rb, line 12
def initialize(api_key)
  self.api_key = api_key
end
with(api_key) click to toggle source
# File lib/ltp/cloud/sdk/client.rb, line 16
def self.with(api_key)
  new(api_key)
end

Public Instance Methods

analysis(text, timeout = 5) click to toggle source
# File lib/ltp/cloud/sdk/client.rb, line 40
def analysis(text, timeout = 5)
  payload = request_payload({ text: CGI::escape(text), pattern: 'ws' })
  res     = request 'analysis', payload, timeout
  res.split(' ')
end
request(service, payload, timeout) click to toggle source
# File lib/ltp/cloud/sdk/client.rb, line 27
def request(service, payload, timeout)
  res = RestClient::Request.execute(method:  :get,
                                    url:     uri(service),
                                    timeout: timeout,
                                    headers: { params: payload }
  )
  res.body
end
request_payload(data) click to toggle source
# File lib/ltp/cloud/sdk/client.rb, line 20
def request_payload(data)
  {
    api_key: api_key,
    format:  'plain'
  }.merge data
end
uri(service) click to toggle source
# File lib/ltp/cloud/sdk/client.rb, line 36
def uri(service)
  "#{END_POINT}#{service}"
end