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

Map / Switch from GET to POST request improved in case of missing CORS header on HTTP errors #8036

Merged
merged 2 commits into from
May 21, 2024

Conversation

fxprunayre
Copy link
Member

Complementary to #8023

Some servers may not provide CORS header if an HTTP error occurs. eg. https://stackoverflow.com/questions/28584891/cors-header-not-being-served-by-apache-if-theres-a-404 On Apache, it depends on the usage of always in

Header always set Access-Control-Allow-Origin "*"

but it also depends on the list of virtual host in the configuration. A virtual host matching * or an IP corresponding to the domain may resolve first and the Header directive may not be the same in all virtual host.

Can be tested, with https://sextant.ifremer.fr/services/wms/environnement_marin. When indexing features, large GET request may be generated when adding many filters eg.

angular.injector(["ng"]).get("$http").head("https://sextant.ifremer.fr/services/wms/environnement_marin?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&FORMAT=image%2Fpng&TRANSPARENT=true&LAYERS=surval_lieux_actifs_REPHY_REPHYTOX_point&STYLES=&FILTER=(%3Cogc%3AFilter%20xmlns%3Axs%3D%22http%3A%2F%2Fwww.w3.org%2F2001%2FXMLSchema%22%20xmlns%3Agml%3D%22http%3A%2F%2Fwww.opengis.net%2Fgml%22%20xmlns%3Aogc%3D%22http%3A%2F%2Fwww.opengis.net%2Fogc%22%3E%3Cogc%3AAnd%3E%3Cogc%3AOr%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3EQUADRIGE_ZONEMARINE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079%20-%20Pertuis%20d'Antioche*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3EQUADRIGE_ZONEMARINE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079%20-%20Pertuis%20d'Antioche%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3EQUADRIGE_ZONEMARINE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079%20-%20Pertuis%20d'Antioche*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3EQUADRIGE_ZONEMARINE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079%20-%20Pertuis%20d'Antioche%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3C%2Fogc%3AOr%3E%3Cogc%3AOr%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-002%20-%20Le%20Martray*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-002%20-%20Le%20Martray%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-002%20-%20Le%20Martray*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-002%20-%20Le%20Martray%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-010%20-%20Nord%20Saumonards*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-010%20-%20Nord%20Saumonards%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-010%20-%20Nord%20Saumonards*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-010%20-%20Nord%20Saumonards%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-024%20-%20Baie%20d'Yves%20(a)*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-024%20-%20Baie%20d'Yves%20(a)%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-024%20-%20Baie%20d'Yves%20(a)*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-024%20-%20Baie%20d'Yves%20(a)%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-026%20-%20Le%20Cornard*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-026%20-%20Le%20Cornard%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-026%20-%20Le%20Cornard*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-026%20-%20Le%20Cornard%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-029%20-%20Aytr%C3%A9*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-029%20-%20Aytr%C3%A9%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-029%20-%20Aytr%C3%A9*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-029%20-%20Aytr%C3%A9%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-027%20-%20Chatelaillon%20(a)*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-027%20-%20Chatelaillon%20(a)%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-027%20-%20Chatelaillon%20(a)*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-027%20-%20Chatelaillon%20(a)%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3C%2Fogc%3AOr%3E%3C%2Fogc%3AAnd%3E%3C%2Fogc%3AFilter%3E)&CRS=EPSG%3A3857&WIDTH=1183&HEIGHT=1050&BBOX=-165448.08519230082%2C5777401.481768884%2C-121888.37819306905%2C5816063.943602521", {}).then(
function(c) {console.log("success", c)},
function(c) {console.log("error", c)})

When possible, it is better to improve the webserver configuration for the WMS.

Checklist

  • I have read the contribution guidelines
  • Pull request provided for main branch, backports managed with label
  • Good housekeeping of code, cleaning up comments, tests, and documentation
  • Clean commit history broken into understandable chucks, avoiding big commits with hundreds of files, cautious of reformatting and whitespace changes
  • Clean commit messages, longer verbose messages are encouraged
  • API Changes are identified in commit messages
  • Testing provided for features or enhancements using automatic tests
  • User documentation provided for new features or enhancements in manual
  • Build documentation provided for development instructions in README.md files
  • Library management using pom.xml dependency management. Update build documentation with intended library use and library tutorials or documentation

Funded by Ifremer

…S header on HTTP errors

Some servers may not provide CORS header if an HTTP error occurs. eg. https://stackoverflow.com/questions/28584891/cors-header-not-being-served-by-apache-if-theres-a-404
On Apache, it depends on the usage of `always` in
```
Header always set Access-Control-Allow-Origin "*"
```
but it also depends on the list of virtual host in the configuration. A virtual host matching `*` or an IP corresponding to the domain may resolve first and the `Header` directive may not be the same in all virtual host.

Can be tested, with https://sextant.ifremer.fr/services/wms/environnement_marin. When indexing features, large GET request may be generated when adding many filters eg.

```
angular.injector(["ng"]).get("$http").head("https://sextant.ifremer.fr/services/wms/environnement_marin?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&FORMAT=image%2Fpng&TRANSPARENT=true&LAYERS=surval_lieux_actifs_REPHY_REPHYTOX_point&STYLES=&FILTER=(%3Cogc%3AFilter%20xmlns%3Axs%3D%22http%3A%2F%2Fwww.w3.org%2F2001%2FXMLSchema%22%20xmlns%3Agml%3D%22http%3A%2F%2Fwww.opengis.net%2Fgml%22%20xmlns%3Aogc%3D%22http%3A%2F%2Fwww.opengis.net%2Fogc%22%3E%3Cogc%3AAnd%3E%3Cogc%3AOr%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3EQUADRIGE_ZONEMARINE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079%20-%20Pertuis%20d'Antioche*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3EQUADRIGE_ZONEMARINE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079%20-%20Pertuis%20d'Antioche%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3EQUADRIGE_ZONEMARINE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079%20-%20Pertuis%20d'Antioche*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3EQUADRIGE_ZONEMARINE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079%20-%20Pertuis%20d'Antioche%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3C%2Fogc%3AOr%3E%3Cogc%3AOr%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-002%20-%20Le%20Martray*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-002%20-%20Le%20Martray%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-002%20-%20Le%20Martray*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-002%20-%20Le%20Martray%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-010%20-%20Nord%20Saumonards*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-010%20-%20Nord%20Saumonards%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-010%20-%20Nord%20Saumonards*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-010%20-%20Nord%20Saumonards%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-024%20-%20Baie%20d'Yves%20(a)*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-024%20-%20Baie%20d'Yves%20(a)%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-024%20-%20Baie%20d'Yves%20(a)*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-024%20-%20Baie%20d'Yves%20(a)%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-026%20-%20Le%20Cornard*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-026%20-%20Le%20Cornard%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-026%20-%20Le%20Cornard*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-026%20-%20Le%20Cornard%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-029%20-%20Aytr%C3%A9*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-029%20-%20Aytr%C3%A9%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-029%20-%20Aytr%C3%A9*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-029%20-%20Aytr%C3%A9%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-027%20-%20Chatelaillon%20(a)*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-027%20-%20Chatelaillon%20(a)%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E*079-P-027%20-%20Chatelaillon%20(a)*%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3Cogc%3APropertyIsLike%20escapeChar%3D%22%5C%22%20matchCase%3D%22false%22%20singleChar%3D%22%3F%22%20wildCard%3D%22*%22%3E%3Cogc%3APropertyName%3ELIEU_LIBELLE%3C%2Fogc%3APropertyName%3E%3Cogc%3ALiteral%3E079-P-027%20-%20Chatelaillon%20(a)%3C%2Fogc%3ALiteral%3E%3C%2Fogc%3APropertyIsLike%3E%3C%2Fogc%3AOr%3E%3C%2Fogc%3AAnd%3E%3C%2Fogc%3AFilter%3E)&CRS=EPSG%3A3857&WIDTH=1183&HEIGHT=1050&BBOX=-165448.08519230082%2C5777401.481768884%2C-121888.37819306905%2C5816063.943602521", {}).then(
function(c) {console.log("success", c)},
function(c) {console.log("error", c)})
```
@fxprunayre fxprunayre added this to the 4.4.5 milestone May 14, 2024
@fxprunayre fxprunayre requested a review from josegar74 May 14, 2024 06:22
Copy link

sonarcloud bot commented May 14, 2024

Quality Gate Passed Quality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarCloud

@fxprunayre fxprunayre merged commit c5f3e64 into main May 21, 2024
9 checks passed
@fxprunayre fxprunayre deleted the 44-headrequestwithoutcorsheader branch May 21, 2024 08:29
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.

None yet

2 participants