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

How can I generate WMS requests with lowercase parameters #325

Open
Amither113 opened this issue Nov 14, 2023 · 4 comments
Open

How can I generate WMS requests with lowercase parameters #325

Amither113 opened this issue Nov 14, 2023 · 4 comments

Comments

@Amither113
Copy link

MapCache defaults to uppercase parameters in WMS requests, is there a configuration method to make the request parameters in lowercase?

@jratike80
Copy link

jratike80 commented Nov 14, 2023

Please clarify what you mean with parameters. By the WMS standard:

6.4 Request Parameter Rules
6.4.1 Parameter Ordering and Case
Parameter names shall not be case sensitive, but parameter values shall be case sensitive.
In this document, parameter names are typically shown in uppercase for typographical
clarity, not as a requirement.

It means that by the standard only "WMS" should be accepted as a service name, but &SerVICe=WMS is OK. Most, but not all, WMS servers accept also "wms".

Do you know some client that does not follow the standard? Or does MapCache change some parameter values into upper case?

@Amither113
Copy link
Author

Yes, I have encountered WMS services that do not follow the standard, when I use &service=wms I can request successfully, but not when &SERVICE=WMS.

@jratike80
Copy link

The primary action would be to ask if they could make a fix on their side. It also fits with the robustness principle https://en.wikipedia.org/wiki/Robustness_principle.

@marisn
Copy link
Contributor

marisn commented Dec 5, 2023

There are infinitely many ways how a non-conformant server can behave and thus it is impossible to support non-conformant servers as infinitely many workarounds would have to be implemented. This is the reason why we do have standards and follow them.

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

No branches or pull requests

3 participants