Lingara Lingara Mwongozo Miongozo API Maktaba Programu Unda Programu ya wavuti
Lugha: Kiswahili

Ruby

Ukurasa huu umetafsiriwa kutoka Kiingereza. Ikiwa hizi mbili zinatofautiana, ukurasa wa Kiingereza ndio sahihi. Soma ukurasa wa Kiingereza

Maktaba ya Ruby ni gem ya lingara kwenye RubyGems. Inahitaji Ruby 3.3 au toleo jipya zaidi na hutumia Net::HTTP kutoka kwenye maktaba ya kawaida, bila gem nyingine yoyote.

Jinsi inavyotumika

  • Miito inasawazishwa. Mteja mmoja anaweza kushirikiwa kati ya nyuzi, na anaendelea kufanya kazi ipasavyo baada ya fork.
  • Pitisha block kwa mwito unaotiririsha na kila tukio litapewa block hiyo. Bila block unapata badala yake mtiririko wa Enumerable, ambao ni wa kuchelewa: ombi hutumwa kwenye each au next ya kwanza. Mtiririko unaosomwa kwa next unahitaji close ya wazi.
  • Linganisha matukio kwa case na in.
  • Ili kusimamisha mtiririko mapema, toka kwenye block kwa break, au ita close.
  • Hitilafu hurithi kutoka kwa Lingara::Error. retry_after ni idadi ya sekunde, au nil wakati API haikutaja muda wa kusubiri.
  • Unda mteja kwa hoja za maneno muhimu kwa Lingara::Client.new. Chaguo za Net::HTTP huwekwa kwenye net_http_options; muda wake wa kusubiri kusoma pia ndio muda wa kusubiri wa mtiririko uliotulia.

Sampuli zilizo hapa chini husakinisha gem, huunda mteja, hutiririsha orodha ya msamiati na hushughulikia hitilafu.

Ruby

gem install lingara -v 0.1.0-alpha.6

Ruby

require "lingara"

client = Lingara::Client.new(client_id: client_id, client_secret: client_secret)

Ruby

client.generate_vocabulary(level: 2, source_lang: "en", target_lang: "zh", count: 8) do |event|
  case event
  in Lingara::GenerateVocabularyEventItem => item then puts "#{item.data.word}: #{item.data.translation}"
  else nil
  end
end

Ruby

begin
  client.get_usage
rescue Lingara::ApiError => e
  # A refusal from the API: status, code (stable) and message (localised).
  puts "#{e.status} #{e.code}: #{e.message}"
  puts "retry after #{e.retry_after}s" if e.retry_after
rescue Lingara::OAuthError => e
  # The token endpoint refused the credentials or the scopes.
  puts "#{e.status} #{e.error}: #{e.description}"
rescue Lingara::MaintenanceError => e
  puts "under maintenance"
  puts "retry after #{e.retry_after}s" if e.retry_after
rescue Lingara::TransportError => e
  # No usable answer: :connect, :tls, :reset, :timeout, and so on.
  puts "transport: #{e.kind}"
end

Kile ukurasa huu unachofunika