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 kwenyeeachaunextya kwanza. Mtiririko unaosomwa kwanextunahitajicloseya wazi. - Linganisha matukio kwa
casenain. - Ili kusimamisha mtiririko mapema, toka kwenye block kwa
break, au itaclose. - Hitilafu hurithi kutoka kwa
Lingara::Error.retry_afterni idadi ya sekunde, aunilwakati API haikutaja muda wa kusubiri. - Unda mteja kwa hoja za maneno muhimu kwa
Lingara::Client.new. Chaguo za Net::HTTP huwekwa kwenyenet_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.6Ruby
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
endRuby
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