Я использую внешний вход Google в своем приложении, и мне нужна функция, позволяющая пользователю загружать изображения из приложения на свой диск Google.
В моем локальном коде функция загрузки файлов с диска Google работает нормально, после размещения ее на IIS пользователь не может загрузить изображение.
Я создал файл журнала ошибок. в этом я нашел следующее исключение:
System.AggregateException: произошла одна или несколько ошибок. ---> System.NotSupportedException: не удалось запустить браузер с авторизацией "https://accounts.google.com/o/oauth2/v2/auth?access_type=offline&response_type=code&client_id=347588538121-jeali0jufd389gqsi4ge22ent3939b4m.apps.googleusercontent.com&redirect_uri=http%3A%2F%2Flocalhost%3A60931%2Fauthorize%2F&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fdrive"". Подробности см. Во внутреннем исключении. ---> System.ComponentModel.Win32Exception: доступ запрещен
В redirect_uri я нашел "localhost". но после хостинга это должен быть www.abc.com, и номер порта здесь также всегда меняется.
Пробовал разными способами со stachoverflow и других сайтов. но не нашел решения.
Пожалуйста, помогите мне решить эту проблему.
Спасибо.
Пробовал с
credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
obj,
Scopes,
"user",
CancellationToken.None,
new FileDataStore(AppDomain.CurrentDomain.BaseDirectory + "Daimto.GoogleDrive.Auth.Store")
).Result;
, а также с:
using (var stream = new FileStream(Path.Combine(AppDomain.CurrentDomain.BaseDirectory) + "credentials.json", FileMode.Open, FileAccess.Read))
{
// The file token.json stores the user's access and refresh tokens, and is created
// automatically when the authorization flow completes for the first time.
string credPath = AppDomain.CurrentDomain.BaseDirectory + "token.json";
credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
GoogleClientSecrets.Load(stream).Secrets,
Scopes,
"user",
CancellationToken.None,
new FileDataStore(credPath, true)).Result;
}