こんにちは。Discourse からユーザーごとの API キーを取得する際、ユーザーごとの API キーのプロセス を使用すると、同時にユーザー名も取得することは可能でしょうか?
「いいね!」 1
回避策を見つけました:キーをお持ちであれば、Discourse API に対して認証付きの呼び出しを行うと、ヘッダーに「x-discourse-username: username」として返されます。ヒントをくれた @RGJ に感謝します。
例えば、Discourse からキーを取得し、そのキーを使って /site.json などのエンドポイントに API 呼び出しを行うことができます。
そして、レスポンスヘッダーを以下のようにパースします:
....then((response) => {
var headerResponseArray = (JSON.stringify(response.headers)).split(',')
headerResponseArray.forEach((h) => {
if (h.includes('x-discourse-username')) {
var userNameRaw = h.split(':')[1].trim()
}
})
})
もし Discourse がユーザーごとの API キーを返す際に、そのままユーザー名も返してくれるなら、もっと速くなるのですが。もしそのような方法をご存知の方がいたら、教えてください。
「いいね!」 3