ログアウトボタンの実装

こんにちは、

Discourse の外側にログアウトボタンを実装したいと考えています。そのボタンには、以下の機能が必要です。

  1. ユーザーをすべてのデバイスからログアウトさせる
  2. 指定された URL に移動させるリフレッシュボタン

なお、ログインボタンは Discourse 内に配置し、ログアウトオプションは外部に設置する予定です。

関連する記事やディスカッション、ご助言をいただければ幸いです。

よろしくお願いいたします。

認証された POST リクエストを /admin/users/<user_id>/log_out に対して送信することで、Discourse API を通じてユーザーをログアウトさせることができます。<user_id> を対象のユーザーの Discourse ユーザー ID に置き換える必要があります。

この実装は、Discourse WordPress プラグインで確認できます: wp-discourse/lib/sso-provider/discourse-sso.php at main · discourse/wp-discourse · GitHub

こんにちは、@simon さん。この機能には SSO を有効にする必要がありますよね?もしそうなら、ログアウト専用の SSO 有効化のために、何を設定・有効化する必要があるでしょうか?

いいえ、/admin/users/<user_id>/log_out の呼び出しが機能するために SSO の有効化は必須ではありません。

404 エラーが発生しています。お手伝いできますか?

Api-KeyApi-Username の両方のヘッダーを設定する必要があります。All Users API キーを使用している場合は、Api-Username ヘッダーを ‘system’ に設定するのが適切です。

ありがとうございます。うまくいきました。