Я пытаюсь использовать Google Cloud Vision с помощью http-запроса об отдыхе, используя c #.Как описано здесь , я попытался пройти аутентификацию с ключом API в качестве параметра:
string uri = "https://vision.googleapis.com/v1/images:annotate?key=" + API_KEY;
HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Post, uri);
[...]
response = await client.SendAsync(request);
Однако я всегда получаю код 403 РАЗРЕШЕНИЕ НА РАЗРЕШЕНИЕ:
Cloud Vision API ранее не использовался в проекте XXXXX или отключен.Включите его, посетив https://console.developers.google.com/apis/api/vision.googleapis.com/overview?project=XXXXXXX, затем повторите попытку.Если вы недавно включили этот API, подождите несколько минут, пока действие распространится на наши системы, и повторите попытку.
Конечно, я проверил, API активирован, включен, и никаких ограничений API нет:
Так как казалось, что существуют некоторые проблемы с этим методом аутентификации, особенно с облачным зрением, я попробовал аутентификацию через токен доступа учетной записи службы, которую ясоздано.Я предоставил учетной записи службы полный доступ только для того, чтобы убедиться в отсутствии проблем с правами учетной записи службы:
string uri = "https://vision.googleapis.com/v1/images:annotate";
HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Post, uri);
request.Headers.Add("Authorization", "Bearer " + ACCESS_TOKEN);
response = await client.SendAsync(request);
Тем не менее, то же сообщение об ошибке.То же самое и с curl:
curl -k -X POST -H "Content-Type:application/json"
-d "@{REQUEST_AS_JSON_OR_PATH_TO_JSON-FILE}"
https://vision.googleapis.com/v1/images:annotate?key={API_KEY}
Что я пропускаю?