この例でuser_idはどこから来たはずですか?ここからコマンドラインの例を使用google oauthコマンドラインの例でuser_idとは何ですか?
: https://github.com/google/google-auth-library-ruby
は私だけ「/パス/に/」を除去することにより、例を変更しましたし、私の作業ディレクトリでたclient_secrets.jsonがあります。
require 'googleauth'
require 'googleauth/stores/file_token_store'
OOB_URI = 'urn:ietf:wg:oauth:2.0:oob'
scope = 'https://www.googleapis.com/auth/drive'
client_id = Google::Auth::ClientId.from_file('client_secrets.json')
token_store = Google::Auth::Stores::FileTokenStore.new(
:file => 'tokens.yaml')
authorizer = Google::Auth::UserAuthorizer.new(client_id, scope, token_store)
credentials = authorizer.get_credentials(user_id)
if credentials.nil?
url = authorizer.get_authorization_url(base_url: OOB_URI)
puts "Open #{url} in your browser and enter the resulting code:"
code = gets
credentials = authorizer.get_and_store_credentials_from_code(
user_id: user_id, code: code, base_url: OOB_URI)
end
このコードを実行すると、ブラウザにプラグインするURLが表示されます。 URLは私を同意画面に連れて行きます。私が受け入れると、端末にプラグインするコードが与えられます。
は、その後、私はエラーを取得する:NameError: undefined local variable or method `user_id' for main:Object
明らかにuser_idの定義されていないため
...が、私はそれを得るのですか?
代わりに、すべてのyoutube apisと組み合わせてRubyに使用するべきoauth 2.0ライブラリの方が、より優れた、より新しい、またはより良い文書がありますか?