Code does not check for session = null when obtaining webId
オープン
まだ誰も着手していません。
authentication
input-needed
- 主要言語
- TypeScript
- スター
- 153
- フォーク
- 46
- 平均マージ
- 1日 8時間
- マージ済み PR(30日)
- 7
説明
How to reproduce
- Logged out and cleared localStorage
- Attempted to login to https://melvin.solid.live/public/RWWCrew/
- Click on custom domain, https://melvincarvalho.com/#me
Observed behaviour
Uncaught (in promise) TypeError: Cannot read property 'webId' of null
at signin.js:732
at <anonymous>
in
signInPopUpButton.addEventListener('click', function () {
var offline = offlineTestID();
if (offline) return setUserCallback(offline.uri);
return solidAuthClient.popupLogin({ popupUri: $SOLID_GLOBAL_config.popupUri }).then(function (session) {
var webIdURI = session.webId;
Expected Behaviour
What I would expect is to redirect me to my oidc provider, let me log in, and then give me a bearer token
Possible fix
https://github.com/solid/solid-ui/blob/master/src/signin.js#L739 should use webIdFromSession
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
src/signin.js の 739 行目付近にある signInPopUpButton ハンドラーから開始し、783 行目付近の webIdFromSession とセッション処理を比較します。ログアウト状態でのカスタムドメインのログインフローを再現し、null セッションによって報告された webId TypeError が発生しなくなったこと、および想定されるプロバイダーログインと bearer-token フローを続行できることを確認します。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- javascript
- 領域
- authentication, frontend
- issue の種類
- バグ
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 活発さ
- 停滞
- 明瞭さ
- 明確に書かれている
- 初心者へのやさしさ
- 35/100