0

フロントサイドで認証を管理するために Torii と ember-simple-auth を使用し、サーバーで Knock と Omniauth-twitter を使用しています。Facebookは問題なかったのですが、Oauth1.0を使ったTwitterは流れがつかめず困っています。

これが私の鳥居の設定です:

# environment.js

ENV['torii'] = {
sessionServiceName: 'sessiontorii',
providers: {
  'facebook-oauth2': {
    apiKey: 'API_KEY',
    redirectUri: 'http://localhost:4200/'
  },
  'twitter': {
    requestTokenUri: 'http://127.0.0.1:3000/auth/twitter'
  }
}

私のルートまたはコントローラー:

# route.js

twitterLogin() {
  var self = this;
  this.get('sessiontorii').open('twitter').then(function(response) {
    console.log(response);

    self.transitionTo('index');
  }, function() {
    console.log('auth failed');
  });
},

新しいウィンドウが開き、Twitter アカウントでログインできます。サーバーが認証/登録を行いますが、この新しいウィンドウを閉じてトークンを前面に送信する方法がわかりません。私のフローは完全に間違っていますか?それとも何かが恋しいですか?私はこのチュートリアルに従いましたが、少し時代遅れではないのだろうか

4

1 に答える 1

0

問題は、サーバーから間違ったタイプのデータを送信していたことです。そこで、torii-provider と送信するコードを更新しました。Torii がジョブを実行し、データを取得すると新しいウィンドウを閉じます。次に、データをオーセンティケーターに送信し、JWT コードで認証を確認します。

于 2017-04-20T08:55:16.610 に答える