0

Others appear to have similar issues to Drupal 8/9 encoding URLs in the link field though I see no solutions.

We're a library site and have many links for our patrons to external database websites that we link to with proxy URLs such as:

https://somewebsite.com/login?auth=password&url=https://link.gale.com/apps/doc/K1606004825/BIC?u=schools&sid=BIC&xid=2aefeae4

However, Drupal encodes the URL after the second https so it looks like:

https://somewebsite.com/login?auth=password&url=https%3A//link.gale.com/apps/doc/K1606004825/BIC%3Fu%3Dschools&sid=BIC&xid=2aefeae4

which returns an error.

Is there a way to turn off this function or disable URL encoding for the link field?

1
  • The first URL in your question is invalid (the second is fine) - you’re probably going to have a fight on your hands to get Drupal to output invalid URLs through the API
    – Clive
    Apr 28, 2021 at 13:23

2 Answers 2

0

I work for Denver Public Library and we ran into the same issue when we tried to post Ebsco permalinks on a Drupal 8 site.

As a workaround we are able to pass the URLs through a URL shortener and post that shortened URL.

A colleague of mine also remembered that they used to have to change permalinks before posting back on D6. They demonstrated that if you change a link from

https://ezproxy.yourlibrary.org/login?url=https://search.ebscohost.com/login.aspx?direct=true&db=aph&AN=100123456&scope=site

to:

https://search.ebscohost.com.ezproxy.yourlibrary.org/login.aspx?direct=true&db=aph&AN=100123456&scope=site

the second link would work with a D8 and above URL field while the first would encounter the encoding issue.

I have shared this information with Ebsco and am creating a ticket for ProQuest. However, if nothing changes with the way they create their permalinks the URL shortener workaround has been effective for us.

2
  • Thanks! I'll take a look at their admin and see if that works for us.
    – Kevin S
    Oct 11, 2021 at 12:53
  • We are running into a similar issue with Tableau links, which have a colon in URLs with active filters, which doesn't follow the URL spec... We had to use the same solution, using link a shortener. Mar 9, 2022 at 16:46
0

In EBSCOadmin, there is a feature to create a proxy mask for Permalinks.

See the FAQ on EBSCO Connect site. https://connect.ebsco.com/s/article/How-do-I-add-a-Proxy-Server-in-EBSCOadmin-and-embed-it-in-my-EBSCOhost-URL?language=en_US

The proxy mask should be like the following: https://{targetURLDomain}.ezproxy.yourlibrary.org/{targetURLRemainder}

The above proxy mask would construct a URL like the below, which would work from Drupal. https://search.ebscohost.com.ezproxy.yourlibrary.org/login.aspx?direct=true&db=aph&AN=100123456&scope=site

2
  • Your answer could be improved with additional supporting information. Please edit to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers in the help center.
    – Community Bot
    Oct 7, 2021 at 11:11
  • Thanks! Yeah we'd already considered that though we have one site with over 1000 EBSCO permalinks so we were hoping for a programmatic workaround.
    – Kevin S
    Oct 11, 2021 at 12:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.