瀏覽代碼

client: permit relative links in json

Benton Edmondson 1 年之前
父節點
當前提交
a48f2a40de
共有 1 個文件被更改,包括 6 次插入2 次删除
  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
 		}