X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=lib%2Fagent%2Fxdsserver.go;h=37604b51ba7ac671667c454984e24f66ef8ff4b6;hb=f1886fb200406a6433669649c4f2448904876ec2;hp=5851a07f47aa7793e14b6ab89530e9834ec12a81;hpb=e904bbbca32614da95384d11f6ad5e53ea1e0036;p=src%2Fxds%2Fxds-agent.git diff --git a/lib/agent/xdsserver.go b/lib/agent/xdsserver.go index 5851a07..37604b5 100644 --- a/lib/agent/xdsserver.go +++ b/lib/agent/xdsserver.go @@ -251,7 +251,13 @@ func (xs *XdsServer) PassthroughGet(url string) { xs.apiRouter.GET(url, func(c *gin.Context) { var data interface{} - if err := xs._HTTPGet(url, &data); err != nil { + // Take care of param (eg. id in /projects/:id) + nURL := url + if strings.Contains(url, ":") { + nURL = strings.TrimPrefix(c.Request.URL.Path, xs.APIURL) + } + // Send Get request + if err := xs._HTTPGet(nURL, &data); err != nil { if strings.Contains(err.Error(), "connection refused") { xs.Connected = false xs._NotifyState() @@ -279,7 +285,13 @@ func (xs *XdsServer) PassthroughPost(url string) { return } - response, err := xs._HTTPPost(url, bodyReq[:n]) + // Take care of param (eg. id in /projects/:id) + nURL := url + if strings.Contains(url, ":") { + nURL = strings.TrimPrefix(c.Request.URL.Path, xs.APIURL) + } + // Send Post request + response, err := xs._HTTPPost(nURL, bodyReq[:n]) if err != nil { common.APIError(c, err.Error()) return