Получение ошибки сервера на динамической ссылке firebase CreateManagedShortLinkRequest с клиентом Ruby - PullRequest
0 голосов
/ 26 июня 2019

Я пытаюсь создать динамическую ссылку, используя Ruby SDK. Я верю, что у меня все в порядке, но я получаю

Google :: Apis :: ServerError: Ошибка сервера

При создании URL

Не могли бы вы помочь мне выяснить, что я пропускаю / делаю неправильно или это проблема Google?

Предполагая, что у меня генерируются учетные данные Oauth, запрашивающие соответствующие области, я делаю

request = ::Google::Apis::FirebasedynamiclinksV1::CreateManagedShortLinkRequest.new(
  dynamic_link_info: ::Google::Apis::FirebasedynamiclinksV1::DynamicLinkInfo.new(
    domain_uri_prefix: Rails.application.secrets.firebase_dynamic_link_prefix,
    link: campaign.linkedin_url,
  ),
  suffix: ::Google::Apis::FirebasedynamiclinksV1::Suffix.new(
    option: 'SHORT',
  ),
  # name: "Linkedin acquisition URL of #{camp.utm_campaign_name} for #{camp.contractor.name} <#{camp.contractor.email}>",
  name: "Test of generation",
)
# => <Google::Apis::FirebasedynamiclinksV1::CreateManagedShortLinkRequest:0x000021618baa88 
#   @dynamic_link_info=#<Google::Apis::FirebasedynamiclinksV1::DynamicLinkInfo:0x000021618bad80 
#     @domain_uri_prefix="https://example.page.link", 
#     @link="https://www.example.com/?invitation_code=example&signup=example&utm_campaign=example&utm_medium=example&utm_source=example">, 
#   @name="Test of generation", 
#   @suffix=#<Google::Apis::FirebasedynamiclinksV1::Suffix:0x000021618babf0 
#     @option="SHORT">
# >
link_service.create_managed_short_link(request)

def link_service
  @link_service ||= begin
    svc = ::Google::Apis::FirebasedynamiclinksV1::FirebaseDynamicLinksService.new
    svc.authorization = oauth_service.credentials
    svc
  end
end

Я знаю, что области видимости OAuth работают так же, как раньше я получал

Google :: Apis :: ClientError: запрещено: у запроса недостаточно областей аутентификации.

Но я исправил это после увеличения объема OAuth для охвата базы огня. Кроме того, мой запрос кажется правильным, так как, когда я пытаюсь пропустить один из параметров (например, name), я получаю соответствующие ошибки проверки, такие как

Google :: Apis :: ClientError: badRequest: Созданная управляемая динамическая ссылка должна иметь имя

Моя единственная подсказка в том, что create_managed_short_link на самом деле принимает больше параметров. В приведенном выше примере я также заменил наш реальный префикс firebase на example, но у меня есть реальный префикс firebase, который я использую, и генерация ссылок непосредственно из консоли внешнего интерфейса Firebase фактически работает.

Я обновил свой Google SDK до самой последней версии - google-api-client-0.30.3

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...