Я получаю эту ошибку при попытке запустить мое консольное приложение C# ... Я пытаюсь вызвать google calender api v3 для получения календаря и добавления события в календарь. В соответствии с образцом кода от google-api-dotnet-client я делаю это. (https://code.google.com/p/google-api-dotnet-client/source/browse/Calendar.VB.ConsoleApp/Program.vb?repo=samples) Вот код vb.net. Я использую этот образец после преобразования его в код C#.URI перенаправления в запросе: http: // localhost: 12349/авторизовать/не совпадать с зарегистрированным URI перенаправления
Вот мой код:
class Program
{
static void Main(string[] args)
{
try
{
new Program().Run().Wait();
}
catch (AggregateException ex)
{
foreach (var e in ex.InnerExceptions)
{
Console.WriteLine("ERROR: " + e.Message);
}
}
}
private async Task Run()
{
UserCredential credential;
IList<string> scopes = new List<string>();
CalendarService service;
scopes.Add(CalendarService.Scope.Calendar);
using (var stream = new FileStream("client_secrets.json", FileMode.Open, FileAccess.Read))
{
// problem occuring during executing this statement.
credential = await GoogleWebAuthorizationBroker.AuthorizeAsync(
GoogleClientSecrets.Load(stream).Secrets,
scopes,
"user", CancellationToken.None, new FileDataStore("Calender.SampleApp"));
}
BaseClientService.Initializer initializer = new BaseClientService.Initializer();
initializer.HttpClientInitializer = credential;
initializer.ApplicationName = "C# Calendar Sample";
service = new CalendarService(initializer);
Event newEvent = new Event();
newEvent.Summary = "Appointment";
newEvent.Description = "Need to meet my Uncle";
IList<EventReminder> reminders = new List<EventReminder>();
reminders.Add(new EventReminder { Method = "sms", Minutes = 10 });
newEvent.Reminders = new Event.RemindersData { UseDefault = false, Overrides = reminders };
newEvent.Recurrence = new String[] { "DTSTART;TZID=Bangladesh Standard Time:20140124T163000;RRULE:FREQ=DAILY" };
IList<EventAttendee> attendees = new List<EventAttendee>();
attendees.Add(new EventAttendee { Email = "[email protected]", Organizer = true, DisplayName = "Hannan" });
newEvent.Attendees = attendees;
newEvent.GuestsCanInviteOthers = false;
newEvent.GuestsCanModify = false;
newEvent.GuestsCanSeeOtherGuests = false;
newEvent.Location = "Dhaka, Bangladesh";
newEvent.Start = new EventDateTime { DateTime = DateTime.Now, TimeZone = "Bangladesh Standard Time" };
Event recurringEvent = service.Events.Insert(newEvent, "primary").Execute();
var list = await service.CalendarList.List().ExecuteAsync();
}
}
Это моя переадресация URIs в моем проекте GoogleDevelopers Console.
Redirect URIs: http://localhost:7744/authorize/
И это сообщение об ошибке, отображаемое в браузере.
Я не мог найти способ, чтобы решить эту проблему. Некоторая помощь будет заметна. Я также выполняю поиск по всем зарегистрированным сообщениям в stackoverflow. Но я не мог найти решение.
номера портов не совпадают, и номера портов являются важной частью самобытности HTTP URI. –
@ Damien_The_Unbeliever Я знаю. Но я не определял перенаправление uri в моем консольном приложении. Как это определить. –
@Damien_The_Unbeliever, как я могу определить uri из консольного приложения во время сопоставления? –