初めての投稿します。
Google cloud translateでのtranslateメソッドのNoMethodErrorが解決できなくなりました。
ポートフォリオにgoogle cloud translateのapiを組み込んでいたのですが、
突然NoMethodErrorを吐き出すようになってしまい、原因がわかりません。
Google translateのapiを呼び出すコードは以下です。以前はこれで問題なく動作していたのですが、最近になってエラーを出すようになってしまいました。
ruby
1require 'net/http' 2require 'uri' 3require 'json' 4 5def translate(context) 6 url = URI.parse('https://www.googleapis.com/language/translate/v2') 7 params = { 8 q: context, 9 target: "ja", 10 source: "en", 11 key: 'my_api_key' 12 } 13 url.query = URI.encode_www_form(params) 14 res = Net::HTTP.get_response(url) 15 json = res.body 16 17 "Japanese Result:#{JSON.parse(json)["data"]["translations"].first["translatedText"]}" 18end 19 20puts translate "I want to drink beer"
=>>
in translate': undefined method
[]' for nil:NilClass (NoMethodError)
どなたかアドバイスいただけませんでしょうか。よろしくお願いします。
あなたの回答
tips
プレビュー