Как реализовать API Google People в ASP.NET Core? - PullRequest
0 голосов
/ 28 июня 2019

Я хочу заполнить таблицу контактов Google и некоторые сведения о них (имя, адрес, адрес электронной почты, номер телефона) на странице в моем приложении, и я пытаюсь использовать People API.Я не совсем понимаю, как добавить PeopleService в приложение.Я использую пакет NuGet для Google.Apis.PeopleService.v1.

Я попытался добавить пример кода со страницы разработчика People API в свое приложение как в OnGet (кажется, неверно), так и в файле запуска.(кажется более здравым, но не знаю, как реализовать), но у меня проблемы с перенаправлением URI.Для GoogleAuthentication это было легко, поскольку URI перенаправления был установлен в Visual Studio как https://localhost: ##### / , а порт статический.Когда я использую пример кода из People API, он возвращается как http://127.0.0.1: ##### , но порт полностью случайный.Он меняется каждый раз.

            UserCredential credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
            new ClientSecrets
            {
                ClientId = "CLIENT_ID",
                ClientSecret = "CLIENT_SECRET"
            },
            new[] { "profile", "https://www.googleapis.com/auth/contacts.readonly" },
            "me",
            CancellationToken.None).Result;

                        // Create the service.
                        var service = new PeopleService (new BaseClientService.Initializer()
                        {
                            HttpClientInitializer = credential,
                            ApplicationName = "APP_NAME",
                        });

            PeopleResource.ConnectionsResource.ListRequest peopleRequest =
                peopleService.People.Connections.List("people/me");
            peopleRequest.PersonFields = "names,emailAddresses";
            ListConnectionsResponse connectionsResponse = peopleRequest.Execute();
            IList<Person> connections = connectionsResponse.Connections;

IList должен возвращать список людей или "соединений", но URI перенаправления отличается при каждой отправке, поэтому я никогда не получаю.

...