0

Я пытаюсь использовать gem-go-api-ruby-client в приложении rails, чтобы иметь возможность запрашивать у пользователя доступ к их Google Диску. Я успешно перемещаюсь на страницу разрешений запросов, на которую пользователь нажимает. У меня есть функция обратного вызова в контроллере, который захватывает код, который возвращается пользователю, нажав кнопку accept. Затем я пытаюсь получить токен доступа. Здесь меня повесили. Я получаю эту ошибку:Ошибка авторизации Oauth Google

enter image description here

Мой текущий код контроллера выглядит следующим образом:

require 'google/api_client' 

class GoogleDriveController < ApplicationController 

    def initialize 
    @client = Google::APIClient.new(:application_name => '????', :application_version => '1.0.0') 
    end 

    def auth 
    @client.authorization.client_id = ENV["GOOGLE_CLIENT_ID"] 
    @client.authorization.client_secret = ENV["GOOGLE_CLIENT_SECRET"] 
    @client.authorization.redirect_uri = ENV["GOOGLE_REDIRECT_URI"] 
    @client.authorization.scope =  'https://www.googleapis.com/auth/drive' 
    authorize_url = @client.authorization.authorization_uri 
    puts "https://#{authorize_url.host}#{authorize_url.path}?#{authorize_url.query}" 
    render json: {google_auth_url: "https://#{authorize_url.host}#{authorize_url.path}?#{authorize_url.query}"} 
    end 

    def callback 
    @client.authorization.code = params[:code] if params[:code] 
    access_token = @client.authorization.fetch_access_token! 
    @drive = @client.discovered_api('drive', 'v2') 
    end 

end 

Любая помощь или подталкивания в правильном направлении было бы весьма признателен.

Спасибо!

ответ

0
+1

Проблема заключается в том, что он использует API, построенный Google для извлечения маркера доступа, не POSTING вручную через HTTP, как и другие ответы – Ramfjord

Смежные вопросы