【问题标题】:Does StreetViewPublishServiceClient refresh access token automatically before calling API?StreetViewPublishServiceClient 在调用 API 之前是否会自动刷新访问令牌?
【发布时间】:2018-08-17 15:41:09
【问题描述】:

调用street_view_publish_service_client 的 api 时出现以下错误。我的令牌好像过期了……

GaxError(RPC 失败,由 <_rendezvous rpc oauth cookie href="https://developers.google.com/identity/sign-in/web/devconsole-project" rel="nofollow" target="_blank">https://developers.google.com/identity/sign-in/web/devconsole-project.)>)

在调用 StreetViewPublishServiceClient 的 API 之前,凭据的访问令牌是否会自动刷新?如果没有,我该如何刷新访问令牌? 以下是示例代码。

pip install gapic-google-maps-streetview_publish-v1
pip install google-auth


from google.streetview.publish.v1 import street_view_publish_service_client
import google.oauth2.credentials

def run():
  creds = google.oauth2.credentials.Credentials(
      MY_ACCESS_TOKEN,
      refresh_token=MY_REFRESH_TOKEN,
      token_uri="https://www.googleapis.com/oauth2/v4/token",
      client_id=GOOGLE_CLINET_ID,
      client_secret=GOOGLE_CLIENT_SECRET) 

    client = street_view_publish_service_client.StreetViewPublishServiceClient(
        credentials=creds)

    upload_ref = client.start_upload()
    print upload_ref

【问题讨论】:

  • 我的回答对您有用吗?如果您在我的回答中有问题,请随时告诉我。这些信息有助于我学习。另外我认为它可以帮助其他用户了解情况。

标签: python client google-oauth access-token google-street-view


【解决方案1】:

这个修改怎么样?

from google.streetview.publish.v1 import street_view_publish_service_client
import google.oauth2.credentials
import google.auth.transport.requests # Added

def run():
    creds = google.oauth2.credentials.Credentials(
        MY_ACCESS_TOKEN,
        refresh_token=MY_REFRESH_TOKEN,
        token_uri="https://www.googleapis.com/oauth2/v4/token",
        client_id=GOOGLE_CLINET_ID,
        client_secret=GOOGLE_CLIENT_SECRET) 

    creds.refresh(google.auth.transport.requests.Request()) # Added
    client = street_view_publish_service_client.StreetViewPublishServiceClient(
        credentials=creds)

    upload_ref = client.start_upload()
    print upload_ref

注意:

  • 此修改假设在访问令牌过期时间结束之前,访问令牌一直在为您的脚本工作。

参考:

如果这对你没有用,我很抱歉。

【讨论】:

    猜你喜欢
    • 2018-09-14
    • 2021-11-16
    • 2019-11-15
    • 2015-10-05
    • 1970-01-01
    • 2021-02-22
    • 2017-05-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多