Я ищу python 3 пример того, как получить токен доступа, чтобы я мог импортировать CSV-файл из GCS в Cloud SQL из функции Google Cloud.
Это из Облачная функция, поэтому ожидается, что учетная запись службы, под которой он работает, или учетная запись службы экземпляра Cloud SQL будет иметь доступ, если ему будет предоставлен доступ, но это не так.
Response HTTP Response Body: {
"error": {
"code": 401,
"message": "Request is missing required authentication credential. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.",
"errors": [
{
"message": "Login Required.",
"domain": "global",
"reason": "required",
"location": "Authorization",
"locationType": "header"
}
],
"status": "UNAUTHENTICATED"
}
}
Ниже приведена код, любопытно, если у кого-нибудь есть пример кода о том, как я могу заставить его аутентифицироваться.
response = requests.post(
url="https://www.googleapis.com/sql/v1beta4/projects/redacted-project/instances/redacted-instance/import",
headers={"Content-Type": "application/json; charset=utf-8"
},
data=json.dumps({
"importContext": {
"fileType": "CSV",
"csvImportOptions": {
"table": "service_data"
},
"uri": "gs://redacted-bucket/log/" + blob.name + "",
"database": "redacted-db"
}
})
)
print('Response HTTP Status Code: {status_code}'.format(status_code=response.status_code))
print('Response HTTP Response Body: {content}'.format(content=response.content))