我有一个与github连接的ember应用程序,但是身份验证流程返回授权代码,而不是访问令牌,我真的不知道如何进行交换... ,至少我没有在互联网上找到任何例子。
我有点陌生,这是我到目前为止所得到的
authenticator/torii.js
import Ember from 'ember';
import ToriiAuthenticator from 'ember-simple-auth/authenticators/torii';
export default ToriiAuthenticator.extend({
torii: Ember.inject.service()
});
torii-providers/github.js
import GithubOauth2Provider from 'torii/providers/github-oauth2';
export default GithubOauth2Provider.extend({
fetch(data) {
return data;
}
});
我知道我可能不得不改变提供者的内容,但我真的不知道从哪里开始
答案 0 :(得分:3)
我已经使用Torii自己做GitHub认证。以下是我的建议:
在config/environment.js
中,配置Torii。例如:
torii: {
sessionServiceName: 'session',
providers: {
'github-oauth2': {
// your api key goes here
apiKey: '',
// link to your app goes here
// in development mode, it should be http://localhost:4200
redirectUri: '',
// specify OAuth scope here
scope: ''
}
}
}
创建名为torii-adapters/application.js
的文件。在这里,您需要实现三种方法.open()
,.fetch()
和.close()
。请注意,您将收到authorizationCode
作为.open()
的参数,您应该与您的身份验证后端交换访问令牌。
如果对您没有任何意义,请查看this blog post,其中包含OAuth的摘要。你应该了解大局,以便轻松填写细节。 :)