Sfoglia il codice sorgente

添加文件新增

wangbo 7 mesi fa
parent
commit
21cf97803b
1 ha cambiato i file con 38 aggiunte e 0 eliminazioni
  1. 38 0
      osm_sdk.go

+ 38 - 0
osm_sdk.go

@@ -480,6 +480,44 @@ func createImage(reader io.Reader, objName string) (string, error) {
 	return resp.Info, nil
 }
 
+func CreateFile(reader io.Reader, objName string, contentType string) (string, error) {
+	return createFile(reader, objName, contentType)
+}
+
+func CreateFileWithPrefix(reader io.Reader, objName string, contentType string) (string, error) {
+	return createFile(reader, prefix+objName, contentType)
+}
+
+func createFile(reader io.Reader, objName string, contentType string) (string, error) {
+	if strutils.IsStringEmpty(objName) {
+		return "", nil
+	}
+
+	postResponse, err := httpClient.NewRequest(http_client.WithNewRequestTimeout(timeoutDuration)).
+		Post(baseUrl+"/operation/obj/create/file", nil,
+			http_client.WithRequestFileReader("file", objName, reader),
+			http_client.WithRequestFormData(map[string]string{
+				"namespace":   namespace,
+				"name":        name,
+				"objName":     objName,
+				"contentType": contentType,
+			}))
+	if err != nil {
+		return "", err
+	}
+
+	resp := new(response.InfoResponse[string])
+	err = postResponse.Json(resp)
+	if err != nil {
+		return "", err
+	}
+
+	if !resp.Success {
+		return "", errors.New(resp.Msg)
+	}
+	return resp.Info, nil
+}
+
 func GetUrlWithMetaData(objName string) (UrlWithMetaData, error) {
 	return getUrlWithMetaData(objName)
 }