Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Interpret resource_server as absolute URL #582

Merged
merged 1 commit into from Jan 28, 2020

Conversation

bodom0015
Copy link
Member

@bodom0015 bodom0015 commented Jan 21, 2020

Problem

The "User Settings" view offers users a way to connect external API tokens to their account for consumption and integration within WholeTale. After authorizing a provider with a particular resource_server value, the UI is supposed to offer a link to that resource_server.

Unfortunately, since the resource_server values received from Girder do not include a protocol, the browser interprets them as a relative path, and appends them to the end of the dashboard URL.

Fixes #581

Approach

Prepend link with // to force browser to interpret resource_server as an absolute URL.

Note that we use // to avoid potential Mixed-Content errors between HTTPS and HTTP.

See https://superuser.com/questions/341301/why-does-instead-of-http-or-https-before-the-actual-link-work

How to Test

  1. Checkout and run this code locally, rebuild the dashboard
  2. Login to the WholeTale Dashboard
  3. Navigate to the "User Settings" view
  4. Connect a Dataverse or Zenodo account, if you haven't already
    • You should see "Authorized on _________" appear below the Dataverse or Zenodo provider, where ________ is a link to the resource_server
  5. Click the on the link offered by the "Authorized on _________" line
    • Your browser should open a new tab to https://demo.dataverse.org or https://sandbox.zenodo.org

@Xarthisius
Copy link
Contributor

@bodom0015 do you want me to fix that on the backend too?

@bodom0015
Copy link
Member Author

bodom0015 commented Jan 27, 2020

Yeah, I think it would make sense to normalize these URLs in the backend where possible. I hadn't considered the DataONE case (which may include the scheme in the URL), so there may be other edge cases that I've forgotten as well.

Should I file an issue for this, if you haven't already?

@Xarthisius Xarthisius merged commit 791642e into master Jan 28, 2020
@Xarthisius Xarthisius deleted the interpret-resource-server-as-absolute-url branch January 28, 2020 18:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

"Authorized on" links in User Settings have incorrect target URL
2 participants