Как пройти аутентификацию для использования Google Cloud Vision API - PullRequest
0 голосов
/ 12 декабря 2018

В настоящее время я пытаюсь использовать Google Cloud Vision API на C #.

После загрузки файла JSON для аутентификации в Google Cloud я установил системную переменную среды в качестве пути к файлу JSON и скомпилировал свой код.Все было хорошо.

Однако, когда я создал DLL с источником, кажется, что DLL не может получить значение учетных данных приложения Google из системной переменной среды.

Так что я изучил некоторыеиз документов Google Credential Authentication, чтобы поместить код в самую первую строку кода C # для доставки моего пути к файлу JSON для распознавания вызовов моего видения api.

Однако код не работает для правильной аутентификациимой файл JSON для вызова Google Vision API.

Пожалуйста, просветите меня своими знаниями!Спасибо.

Вот мой код.

using System;
using System.IO;
using System.Text;
using System.Threading;
using System.Threading.Tasks;

using Google.Apis.Auth.OAuth2;
using Google.Apis.Util.Store;
using Google.Cloud.Vision.V1;
using Image = Google.Cloud.Vision.V1.Image;
using Grpc.Core;
using Grpc.Auth;


namespace dotNetFramework461_Console
{
    class Program
    {
        public string GVA_API()
        {
            string jsonPath = "D:\\blablablah\\abcdefghijk.json";
            string imgPath = "C:\\Users\\blablablah\\image.jpg";

            var stream = new FileStream(jsonPath, FileMode.Open, FileAccess.Read);
            var credential = GoogleCredential.FromStream(stream).CreateScoped(ImageAnnotatorClient.DefaultScopes);
            var channel = new Grpc.Core.Channel(ImageAnnotatorClient.DefaultEndpoint.ToString(), credential.ToChannelCredentials());
            var client = ImageAnnotatorClient.Create(channel);
            var image = Image.FromFile(imgPath);

            TextAnnotation text = client.DetectDocumentText(image);
            return text.Text;
        }
    }
}
...