Corregge OAuth YouTube piattaforma senza access token in memoria.
Il refresh token ENV non veniva scambiato finché expires_at era vuoto, causando 500 Unauthorized alla creazione sessione YouTube. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -2,9 +2,17 @@ module Api
|
|||||||
module V1
|
module V1
|
||||||
class BaseController < ApplicationController
|
class BaseController < ApplicationController
|
||||||
rescue_from Teams::EntitlementError, with: :render_entitlement_error
|
rescue_from Teams::EntitlementError, with: :render_entitlement_error
|
||||||
|
rescue_from Youtube::BroadcastService::Error, with: :render_youtube_error
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
|
def render_youtube_error(error)
|
||||||
|
render json: {
|
||||||
|
error: "YouTube: #{error.message}",
|
||||||
|
error_code: "youtube_api_error"
|
||||||
|
}, status: :unprocessable_entity
|
||||||
|
end
|
||||||
|
|
||||||
def render_entitlement_error(error)
|
def render_entitlement_error(error)
|
||||||
render json: {
|
render json: {
|
||||||
error: error.message,
|
error: error.message,
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ module Youtube
|
|||||||
end
|
end
|
||||||
|
|
||||||
def apply!(service)
|
def apply!(service)
|
||||||
refresh! if @credential.expired?
|
refresh! if @credential.refresh_token.present? && (@credential.access_token.blank? || @credential.expired?)
|
||||||
service.authorization = @credential.access_token
|
service.authorization = @credential.access_token
|
||||||
service
|
service
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user