microscaling / microbadger

What's inside your Docker containers?
Other
159 stars 17 forks source link

Webhook URL not properly encoded #51

Open madworx opened 5 years ago

madworx commented 5 years ago

Hi.

I used the "Get the webhook" tab when logged on to your service. When I attempt to paste the resulting POST URL (https://hooks.microbadger.com/imag...) into the Webhooks settings for my project on Docker Hub, I receive "Valid URL required" when attempting to add it.

image

It turns out that this is due to the '=' sign being present in the final part of the URL, and not URL-encoded. Replacing '=' with %3d seems to work.

madworx commented 5 years ago

It would seem that replacing the final '=' with %3d enables you to put it into the webhooks at Docker Hub.

Also submitting that to your backend seems to be accepted.

rossf7 commented 5 years ago

@madworx Sorry about the delayed response. This may have been caused by the recent redesign of Docker Hub.

I just tried this with = rather than %3d and it was accepted without an error. Can you confirm if this is still a problem?

madworx commented 5 years ago

@rossf7: No worries.

However, RFC 3986 section 2.2 states that "=" is a reserved character, and should thus be percent-encoded (%3d).

I.e. even if it now works at Docker Hub, it's because DH is more lenient than they need to be; It's still not correct generating the URL without encoding the equals sign.