Azure B2C 与 Flutter 集成

Azure B2C integration with Flutter

我已经在我的 B2C 租户中创建了一个应用程序注册,我想在 Flutter 应用程序中使用它。我在我的 Flutter 项目中使用了 flutter_appauth 包来访问 B2C 实例。 但是,当尝试 运行 应用程序时,我收到以下错误:

我仔细检查了我的注册,信息似乎是正确的:

在我的 Adnroid / build.grade 文件中,我指定了以下内容:

manifestPlaceholders = [
                'appAuthRedirectScheme': 'msauth://com.parasol.app/Bmce%2B9aHdOoVtE7fS3B07tfj7Bc%3D'
        ]

我只尝试了 'com.parasol.app' 和 'msauth://com.parasol.app',但我收到了同样的问题。

如有任何帮助,我们将不胜感激。

这个问题似乎首先与请求形成有关。

首先,请确保您的 build.gradle 中包含以下行:

defaultConfig {
    manifestPlaceholders = [
        'appAuthRedirectScheme': 'com.parasol.app'
    ]
}

关于应用程序注册,请尝试按照以下指南创建新的应用程序注册:https://docs.microsoft.com/en-us/azure/active-directory-b2c/add-native-application?tabs=app-reg-ga 唯一的区别是 redirectUri 应该是

com.parasol.app://oauthredirect

仔细检查您是否正确填写了 clientId、discoveryUrl 和范围的值以形成请求。

如果您可以分享您使用所有参数调用 authorizeAndExchangeCode 方法的代码,这将有助于进一步理解问题。