Explorar o código

client: permit relative links in json

Benton Edmondson hai 1 ano
pai
achega
a48f2a40de
Modificáronse 1 ficheiros con 6 adicións e 2 borrados
  1. 6 2
      client/client.go

+ 6 - 2
client/client.go

@@ -18,11 +18,15 @@ func FetchUnknown(input any, source *url.URL) (object.Object, *url.URL, error) {
 	var obj object.Object
 	switch narrowed := input.(type) {
 	case string:
-		url, err := url.Parse(narrowed)
+		ref, err := url.Parse(narrowed)
 		if err != nil {
 			return nil, nil, err
 		}
-		obj, source, err = FetchURL(url)
+		if source != nil {
+			obj, source, err = FetchURL(source.ResolveReference(ref))
+		} else {
+			obj, source, err = FetchURL(ref)
+		}
 		if err != nil {
 			return nil, nil, err
 		}