mirror of
https://github.com/grafana/grafana.git
synced 2025-02-10 23:55:47 -06:00
Datasources: Fix Proxy by UID Failing for UIDs with a Hyphen (#61723)
Fix Proxy by UID Failing for UIDs with a Hyphen Hyphens are allowed in short IDs but not picked up by the proxyPathRegexp. This caused the end of the uid to be proxied as part of the path to the backing datasource which would usually cause a 404.
This commit is contained in:
parent
239d94205a
commit
f85d072c17
@ -132,7 +132,7 @@ func (p *DataSourceProxyService) proxyDatasourceRequest(c *models.ReqContext, ds
|
||||
proxy.HandleRequest()
|
||||
}
|
||||
|
||||
var proxyPathRegexp = regexp.MustCompile(`^\/api\/datasources\/proxy\/([\d]+|uid\/[\w]+)\/?`)
|
||||
var proxyPathRegexp = regexp.MustCompile(`^\/api\/datasources\/proxy\/([\d]+|uid\/[\w-]+)\/?`)
|
||||
|
||||
func extractProxyPath(originalRawPath string) string {
|
||||
return proxyPathRegexp.ReplaceAllString(originalRawPath, "")
|
||||
|
@ -32,6 +32,14 @@ func TestDataProxy(t *testing.T) {
|
||||
"/api/datasources/proxy/uid/26MI0wZ7k/some/thing",
|
||||
"some/thing",
|
||||
},
|
||||
{
|
||||
"/api/datasources/proxy/uid/pUWo-no4k/search",
|
||||
"search",
|
||||
},
|
||||
{
|
||||
"/api/datasources/proxy/uid/pUWo_no4k/search",
|
||||
"search",
|
||||
},
|
||||
{
|
||||
"/api/datasources/proxy/uid/26MI0wZ7k/api/services/afsd%2Fafsd/operations",
|
||||
"api/services/afsd%2Fafsd/operations",
|
||||
|
Loading…
Reference in New Issue
Block a user