Table data link URL is always encoded and not usable

I am having the same problem using MySQL DataSource.
I have a column with the url and I am using Data link with ${__value.raw}

The url is being encoded and is adding my server url at the beginning.

e.g.
https://mygrafana.com/https%3A%2F%2Fs3.amazonaws.com.xample.pdf

It was working before upgrading to v9.5.1 (bc353e4b2d)

Screenshot_2

Hi, to everyone interested:
I noticed that some of the links work, and some do not.
When changing the link field there are 2 options:
follow the visual help (see picture) and pick a variable from the list - this works and the link is correct.
however, if I edit the field and simply copy-paste characters eg &from=${__from}&to=${__to} - this manual edit results in adding unwanted characters in the link. I do not think I have copied some not displayed characters, but I also did not dig up the problem deeper.
I found a workaround and that was enough for me - but its a hint to anyone wanting do dig the problem deeper.

Problem came from Characters %EF%BB%BF appear in links via Edit Link dialogue · Issue #25107 · grafana/grafana · GitHub When the dash copied as JSON.
Quickly change (if you hav not much URL-s):

  1. Open Query Inspector
  2. Change source (e.g. to Data)
  3. Change back to JSON
    image

Now you can take you BOM characters visible and able to remove them.
Delete, apply and profit!

2 Likes

Wow, I am so relieved! I had an issue with my template variables disappearing whenever I used a URL data link. Although the link would take me to the correct page, I couldn’t see any of my dropdowns (even though the data was still working). A page refresh would bring everything back, but the issue persisted. Upon inspecting the JSON, I discovered 3-4 BOM characters, which I had mistaken for a bug. I’m extremely grateful for your help! Thank you!

Screenshot 2024-01-03 at 8.14.53 AM

Same problem… I was using ${__value.raw} but my URL in browser is getting encoded with %25 everywhere but the URL that I want is to be the exactly same as what I can see in my visualization. It all gets encoded in the address bar when I click on it. I even tried using ${__value.text} to treat the url as it is but the problem didnt solve.

This is my working URL in the table visualization:-

http://172.30.10.90:5000/?launchApp=SYNO.SDS.VideoPlayer2.Application&launchParam=ieMode%3D9%26is_drive%3Dfalse%26path%3D%252FNEX%252FAutefa_NEX1_11%252F20240215AM%252FAutefa_NEX1_11-20240215-103347-1707989627.mp4%26file_id%3D%252FNEX%252FAutefa_NEX1_11%252F20240215AM%252FAutefa_NEX1_11-20240215-103347-1707989627.mp4&ieMode=9

This is how it changes when I click on it … (double encodes the % with %25 from my actual URL):-
http://172.30.10.90:5000/?launchApp=SYNO.SDS.VideoPlayer2.Application&launchParam=ieMode%253D9%2526is_drive%253Dfalse%2526path%253D%25252FNEX%25252FAutefa_NEX1_11%25252F20240215AM%25252FAutefa_NEX1_11-20240215-103347-1707989627.mp4%2526file_id%253D%25252FNEX%25252FAutefa_NEX1_11%25252F20240215AM%25252FAutefa_NEX1_11-20240215-103347-1707989627.mp4&ieMode=9

Hello, I’ve been struggling with this inconvenient for a couple of hours.

After reading all the answers, I discovered that the GUI inserts non-readable characters into the URL when copying/cuting/pasting etc… The solution I’ve found is to get the string ready as it would work and then “parse” the string using the arrow keys. It should move one character for each key-stroke. When you have to do two or more key-strokes to move the cursor, it means that you are next to a non-readable character.

So you go over your string stroking on the right arrow key, for each stroke that cursor doesn’t move you hit the backlash key. And the URL works as a charm.

Caution: once you have the link working, if you need to edit it, it can get full of those characters all over the place. And you have to repeat the cleaning process.