Electron Angular2 和 aws-amplify
Electron Angular2 and aws-amplify
我在使用电子、angular2 和 aws-amplify (Auth) 时遇到问题。一切都在浏览器中工作,但是当我尝试 运行 我的电子应用程序时,我得到:
错误引用错误:未定义授权
我正在使用 angular-cli 并使用 npm 安装 aws-amplify
有人知道我是如何解决这个问题的吗?
我通过使用 Amplify.Auth.signIn 而不是 Auth.signIn 解决了它,在浏览器和电子中都有效
获取Auth对象然后登录的方法有两种。
import Amplify from 'aws-amplify';
Amplify.Auth.signIn(...)
或者
import { Auth } from 'aws-amplify';
Auth.signIn(...)
如果您碰巧将 Auth 放在异步函数中,您需要做的是:
更改您的函数签名并添加 auth 输入,然后为该参数提供 Auth,然后在您的函数中使用 auth:
import { Auth } from "aws-amplify";
await this.handleLoginCallback(
this.auth2.currentUser.get().getBasicProfile(),
this.auth2.currentUser.get().getAuthResponse(),
Auth
);
public async handleLoginCallback(basicProfile, authResponse, auth): Promise<any> {
const results = await auth.federatedSignIn("google", { token: id_token, expires_at }, guser);
}
我在使用电子、angular2 和 aws-amplify (Auth) 时遇到问题。一切都在浏览器中工作,但是当我尝试 运行 我的电子应用程序时,我得到:
错误引用错误:未定义授权
我正在使用 angular-cli 并使用 npm 安装 aws-amplify
有人知道我是如何解决这个问题的吗?
我通过使用 Amplify.Auth.signIn 而不是 Auth.signIn 解决了它,在浏览器和电子中都有效
获取Auth对象然后登录的方法有两种。
import Amplify from 'aws-amplify';
Amplify.Auth.signIn(...)
或者
import { Auth } from 'aws-amplify';
Auth.signIn(...)
如果您碰巧将 Auth 放在异步函数中,您需要做的是:
更改您的函数签名并添加 auth 输入,然后为该参数提供 Auth,然后在您的函数中使用 auth:
import { Auth } from "aws-amplify";
await this.handleLoginCallback(
this.auth2.currentUser.get().getBasicProfile(),
this.auth2.currentUser.get().getAuthResponse(),
Auth
);
public async handleLoginCallback(basicProfile, authResponse, auth): Promise<any> {
const results = await auth.federatedSignIn("google", { token: id_token, expires_at }, guser);
}