使用 NativeScript 配置 OAuth 2 身份验证提供的企业身份验证项目模板
Configuring OAuth 2 Authentication with NativeScript provided Enterprise Auth project template
我正在使用 NativeScript 提供的 Enterprise Auth 项目模板配置 OAuth 2 身份验证,我按照完整指南配置 Azure Active Directory。当我通过 tns 预览执行应用程序时设置 URL 和密钥后,出现以下错误:
错误:
{"error":"invalid_client","error_description":"Client authentication failed.","debug":"Client Verification Failed: redirect uri not valid"}
当我检查登录脚本时它显示错误,因为 Kinvey.User.loginWithMIC() 函数中没有给出参数所以我提供了 Kinvey.User.loginWithMIC('http://example.com') 作为它正在视频教程中展示。
login() {
if (Kinvey.User.getActiveUser() == null) {
Kinvey.User.loginWithMIC()
.then((user: Kinvey.User) => {
this.navigateHome();
console.log("user: " + JSON.stringify(user));
})
.catch((error: Kinvey.BaseError) => {
alert("An error occurred. Check your Kinvey settings.");
console.log("error: " + error);
});
} else {
this.navigateHome();
}
}
正如预期的那样,它应该显示我在 Azure Active Directory 中配置的帐户的登录屏幕。
Here 我有一个 NativeScript 解决方案,它利用了 Kinvey 的 Mobile Identity Connect。它基本上是使用您想要使用的相同模板构建的。在 运行 该项目之前,您需要注意几个重要步骤,它们如下:
- 从
src/app/shared
文件夹中打开 kinvey.common.ts
文件,然后
设置您的 应用程序 ID 和 应用程序秘密(以及 实例 ID 如果
存在,如果不存在 - 删除属性)。这是必需的,以便 NativeScript 应用程序 可以连接到您的 Kinvey 后端。
- 打开 Login 组件的 TypeScript 控制器 并设置您的 MIC 标识符。 MIC 标识符 是MIC 服务的 ID。这将告诉应用程序从后端引用哪个服务。
- 从 Kinvey 控制台 打开 MIC 服务设置 并将
myscheme://
设置为 重定向 URI 。 授权端点 通常会将用户重定向回客户端注册的重定向URL。根据平台的不同,本机应用程序可以声明一个 URL 模式 ,或者注册一个 自定义 URL 方案 启动应用程序。例如,iOS 应用程序 可以注册自定义协议,例如 myapp://
,然后使用 myapp://callback
的 redirect_uri
。
对于这些关键项目的最新列表,您可以查看存储库的 README 文件。试试看,让我知道你是否能让 Kinvey MIC 正常工作。
我正在使用 NativeScript 提供的 Enterprise Auth 项目模板配置 OAuth 2 身份验证,我按照完整指南配置 Azure Active Directory。当我通过 tns 预览执行应用程序时设置 URL 和密钥后,出现以下错误:
错误: {"error":"invalid_client","error_description":"Client authentication failed.","debug":"Client Verification Failed: redirect uri not valid"}
当我检查登录脚本时它显示错误,因为 Kinvey.User.loginWithMIC() 函数中没有给出参数所以我提供了 Kinvey.User.loginWithMIC('http://example.com') 作为它正在视频教程中展示。
login() {
if (Kinvey.User.getActiveUser() == null) {
Kinvey.User.loginWithMIC()
.then((user: Kinvey.User) => {
this.navigateHome();
console.log("user: " + JSON.stringify(user));
})
.catch((error: Kinvey.BaseError) => {
alert("An error occurred. Check your Kinvey settings.");
console.log("error: " + error);
});
} else {
this.navigateHome();
}
}
正如预期的那样,它应该显示我在 Azure Active Directory 中配置的帐户的登录屏幕。
Here 我有一个 NativeScript 解决方案,它利用了 Kinvey 的 Mobile Identity Connect。它基本上是使用您想要使用的相同模板构建的。在 运行 该项目之前,您需要注意几个重要步骤,它们如下:
- 从
src/app/shared
文件夹中打开kinvey.common.ts
文件,然后 设置您的 应用程序 ID 和 应用程序秘密(以及 实例 ID 如果 存在,如果不存在 - 删除属性)。这是必需的,以便 NativeScript 应用程序 可以连接到您的 Kinvey 后端。 - 打开 Login 组件的 TypeScript 控制器 并设置您的 MIC 标识符。 MIC 标识符 是MIC 服务的 ID。这将告诉应用程序从后端引用哪个服务。
- 从 Kinvey 控制台 打开 MIC 服务设置 并将
myscheme://
设置为 重定向 URI 。 授权端点 通常会将用户重定向回客户端注册的重定向URL。根据平台的不同,本机应用程序可以声明一个 URL 模式 ,或者注册一个 自定义 URL 方案 启动应用程序。例如,iOS 应用程序 可以注册自定义协议,例如myapp://
,然后使用myapp://callback
的redirect_uri
。
对于这些关键项目的最新列表,您可以查看存储库的 README 文件。试试看,让我知道你是否能让 Kinvey MIC 正常工作。