OHIF / Viewers

OHIF zero-footprint DICOM viewer and oncology specific Lesion Tracker, plus shared extension packages
https://docs.ohif.org/
MIT License
3.08k stars 3.25k forks source link

OHIF Viewer doesn't properly handle lack of permission to read Google Health Data Store #2133

Closed HowardLander closed 10 months ago

HowardLander commented 3 years ago

Environment: Using the latest from Github and connecting to the Google Health APU using the CLIENT_ID environment variable.

Describe the Bug

I have a dataset in the Google Health for which I have all of the appropriate IAM permissions. The dataset contains 2 data stores, one of which I have Healthcare Dicom Viewer Role for and one of which I don't. When I select the data store I have the role for the expected behavior occurs. But when I select the data store for which I don't have the proper role, I see nothing but a blank screen in the Viewer and in fact I can't even hit the back button and return to the data store screen. Looking at the console I see:

request failed:
XMLHttpRequest { onreadystatechange: onreadystatechange(), readyState: 4, timeout: 0, withCredentials: false, upload: XMLHttpRequestUpload, responseURL: "https://healthcare.googleapis.com/v1beta1/projects/xxxxxx/locations/northamerica-northeast1/datasets/dataset--xxxxx/dicomStores/xxxx-c2/dicomWeb/studies?limit=25&offset=0&fuzzymatching=false&includefield=all&StudyDate=19520513-20201023", status: 403, statusText: "Forbidden", responseType: "json", response: (1) [\u2026] } app.bundle.d04f1cff6549aeffafdc.js:95856:15 Error: request failed Stack trace: onreadystatechange@http://localhost:3000/app.bundle.d04f1cff6549aeffafdc.js:95857:27 app.bundle.d04f1cff6549aeffafdc.js:95861:15 Array [ {\u2026} ] app.bundle.d04f1cff6549aeffafdc.js:95862:15 Error: request failed Stack trace: onreadystatechange@http://localhost:3000/app.bundle.d04f1cff6549aeffafdc.js:95857:27 StudyListRouting.bundle.9cf23067351c88a2044c.js:2232:17 request failed:
XMLHttpRequest { onreadystatechange: onreadystatechange(), readyState: 4, timeout: 0, withCredentials: false, upload: XMLHttpRequestUpload, responseURL: "https://healthcare.googleapis.com/v1beta1/projects/xxxxxx/locations/northamerica-northeast1/datasets/dataset--xxxxxx/dicomStores/xxxxxxx--c2/dicomWeb/studies?limit=25&offset=0&fuzzymatching=false&includefield=all&StudyDate=19520513-20201023", status: 403, statusText: "Forbidden", responseType: "json", response: (1) [\u2026] } app.bundle.d04f1cff6549aeffafdc.js:95856:15 Error: request failed Stack trace: onreadystatechange@http://localhost:3000/app.bundle.d04f1cff6549aeffafdc.js:95857:27 app.bundle.d04f1cff6549aeffafdc.js:95861:15 Array [ {\u2026} ] app.bundle.d04f1cff6549aeffafdc.js:95862:15 Error: request failed Stack trace: onreadystatechange@http://localhost:3000/app.bundle.d04f1cff6549aeffafdc.js:95857:27 StudyListRouting.bundle.9cf23067351c88a2044c.js:2232:17

The responseURL has a reasonable status text of "Forbidden" as I don't have the required permissions, but I would like the app to return to the list of data stores and display the error rather than just show a blank screen.

Any thoughts on this would be greatly appreciated. If someone can give me a few pointers, I'd be happy to spend a little time trying to code a fix. But I suspect this might be obvious to someone familiar with the code.

Thanks Howard

DraconPern commented 3 years ago

It looks like any network errors causes the screen to go blank.

HowardLander commented 3 years ago

Could be. Any chance of a fix?

DraconPern commented 3 years ago

I added a feature request #2173.

HowardLander commented 3 years ago

Great! Thanks

Howard


From: Eric notifications@github.com Sent: Monday, November 16, 2020 5:33 PM To: OHIF/Viewers Viewers@noreply.github.com Cc: Lander, Howard Michael howard@renci.org; Author author@noreply.github.com Subject: Re: [OHIF/Viewers] OHIF Viewer doesn't properly handle lack of permission to read Google Health Data Store (#2133)

I added a feature request #2173https://github.com/OHIF/Viewers/issues/2173.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/OHIF/Viewers/issues/2133#issuecomment-728370341, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAJUNLL7DWHEDT4UO37UGFLSQGSCVANCNFSM4S47B6YA.

sedghi commented 10 months ago

Please review the latest code in the master branch. I am confident that this issue has been resolved. If it persists, kindly reopen the issue with updated details.

Try viewer-dev.ohif.org instead of viewer.ohif.org Our viewer.ohif.org is deployed from release branch while viewer-dev.ohif.org is our master branch Read more about branch explanations here https://docs.ohif.org/development/getting-started#developing

HowardLander commented 10 months ago

I'm glad you have fixed this, but I won't be able to review the fix as the project it occurred in is longer extant. But I'm sure if I saw this bug others would have also seen it so thank you for fixing it.