comparison controllers/externalwfs.go @ 350:1ea90a22bd15

Better replacements for WFS proxy.
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Mon, 06 Aug 2018 18:13:58 +0200
parents 56f6c5ab0f3d
children b89138a25f9e
comparison
equal deleted inserted replaced
349:56f6c5ab0f3d 350:1ea90a22bd15
30 30
31 external := config.ExternalWFSs() 31 external := config.ExternalWFSs()
32 if external == nil || len(external) == 0 { 32 if external == nil || len(external) == 0 {
33 abort("No external WFS proxy config found\n") 33 abort("No external WFS proxy config found\n")
34 } 34 }
35 wfs := mux.Vars(req)["wfs"] 35 vars := mux.Vars(req)
36 wfs := vars["wfs"]
37 rest := vars["rest"]
38
39 log.Printf("rest: %s\n", rest)
36 40
37 alias, found := external[wfs] 41 alias, found := external[wfs]
38 if !found { 42 if !found {
39 abort("No config found for %s\n", wfs) 43 abort("No config found for %s\n", wfs)
40 } 44 }
52 if !ok { 56 if !ok {
53 abort("error: badly configured url for external WFS %s\n", wfs) 57 abort("error: badly configured url for external WFS %s\n", wfs)
54 } 58 }
55 59
56 log.Printf("%v\n", prefix) 60 log.Printf("%v\n", prefix)
57 nURL := prefix + "?" + req.URL.RawQuery 61 nURL := prefix + "/" + rest + "?" + req.URL.RawQuery
58 log.Printf("%v\n", nURL) 62 log.Printf("%v\n", nURL)
59 63
60 u, err := url.Parse(nURL) 64 u, err := url.Parse(nURL)
61 if err != nil { 65 if err != nil {
62 abort("Invalid url: %v\n", err) 66 abort("Invalid url: %v\n", err)