sun-pc-linux 1 month ago
parent
commit
05823cbe1e

+ 56 - 0
index.html

@@ -0,0 +1,56 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="UTF-8" />
+    <title>Document</title>
+  </head>
+  <body>
+    <input id="file" type="file" />
+    <button id="upload">上传</button>
+    <script src="https://gosspublic.alicdn.com/aliyun-oss-sdk-6.18.0.min.js"></script>
+    <script>
+      const client = new OSS({
+        // yourRegion填写Bucket所在地域。以华东1(杭州)为例,yourRegion填写为oss-cn-hangzhou。
+        region: "oss-cn-hangzhou",
+        // 从STS服务获取的临时访问密钥(AccessKey ID和AccessKey Secret)。
+        accessKeyId: "STS.NV7VPCCHGfMPG5xFpdNLRQ8xY",
+        accessKeySecret: "CJ4AeVxAfu7YZcynYAuG5neeoqYpx4TZJafNp3U8NoJ6",
+        // 从STS服务获取的安全令牌(SecurityToken)。
+        stsToken: "CAIS9AF1q6Ft5B2yfSjIr5WCHer3rpdm0Y+7RRPJonAxQsN+vv3Tuzz2IHhMfHdoCeAet/s0lGpY5vYflqZ5Qp5eRVHFbdY155hS8AX54hJsaA/sv9I+k5SANTW5KXyShb3/AYjQSNfaZY3eCTTtnTNyxr3XbCirW0ffX7SClZ9gaKZ8PGD6F00kYu1bPQx/ssQXGGLMPPK2SH7Qj3HXEVBjt3gX6wo9y9zmm53Du0uD1QWhmr5K9tSsGPX+MZkwZqUYesyuwel7epDG1CNt8BVQ/M909vccoW+Z5oHNWwAOuEXcY7qEr8cBNgZ8YbMhC0f/YkEOchsSGoABRXbZO3Bad6G/sxHKOwwOZRHsBlPNeKHc++JKUqsjtgDZ/SO67Z5dDjmCjVQ1fHN3Qme7vpvcJioxBE+ZbfovIrBLVvnP6UpktNg4h1FYLqj6ePdbGFtKhAbXTy6sWw4ed0bX/xiTQXx7jR0njhl9IaCgvxRWzDGrwmGn5ac84HEgAA==",
+        // 填写Bucket名称。
+        bucket: "baishuihu",
+      });
+
+      // 从输入框获取file对象,例如<input type="file" id="file" />。
+      let data;
+      // 创建并填写Blob数据。
+      //const data = new Blob(['Hello OSS']);
+      // 创建并填写OSS Buffer内容。
+      //const data = new OSS.Buffer(['Hello OSS']);
+
+      const upload = document.getElementById("upload");
+
+      async function putObject(data) {
+        try {
+          // 填写Object完整路径。Object完整路径中不能包含Bucket名称。
+          // 您可以通过自定义文件名(例如exampleobject.txt)或文件完整路径(例如exampledir/exampleobject.txt)的形式实现将数据上传到当前Bucket或Bucket中的指定目录。
+          // data对象可以自定义为file对象、Blob数据或者OSS Buffer。
+          const options = {
+            meta: { temp: "demo" },
+            mime: "json",
+            headers: { "Content-Type": "text/plain" },
+          };
+          const result = await client.put("images/test.png", data, options);
+          console.log(result);
+        } catch (e) {
+          console.log(e);
+        }
+      }
+
+      upload.addEventListener("click", () => {
+        const data = file.files[0];
+        putObject(data);
+      });
+    </script>
+  </body>
+</html>

+ 3 - 9
sku3d/sku3d/api/a-service-fassi.go

@@ -11,15 +11,9 @@ import (
 	"go.mongodb.org/mongo-driver/bson/primitive"
 )
 
-var hostUrl = "http://localhost:5000"
-
 func AddFassiImage(imgId primitive.ObjectID, url string) error {
 	//http请求python
-	if len(conf.AppConfig.SearchImageAddr) > 0 {
-		hostUrl = conf.AppConfig.SearchImageAddr
-	}
-
-	api := hostUrl + "/add" // 替换为实际的URL
+	api := conf.AppConfig.SearchImageAddr + "/add" // 替换为实际的URL
 
 	// 定义参数
 	payload := map[string]string{"imageId": imgId.Hex(), "url": url}
@@ -69,7 +63,7 @@ func QueryFassiImage(url string) ([]QueryResp, error) {
 	// 解析JSON响应
 	out := []QueryResp{}
 
-	api := hostUrl + "/search" // 替换为实际的URL
+	api := conf.AppConfig.SearchImageAddr + "/search" // 替换为实际的URL
 	// 定义参数
 	payload := map[string]string{"url": url}
 	jsonData, err := json.Marshal(payload)
@@ -108,7 +102,7 @@ func QueryFassiImage(url string) ([]QueryResp, error) {
 func RomoveFassiImage(id string) (bool, error) {
 	out := map[string]string{}
 
-	api := hostUrl + "/remove/" + id // 替换为实际的URL
+	api := conf.AppConfig.SearchImageAddr + "/remove/" + id // 替换为实际的URL
 
 	// 发送POST请求
 	resp, err := http.Post(api, "application/json", nil)

+ 1 - 0
sku3d/sku3d/api/a-service-img.go

@@ -117,6 +117,7 @@ func createImg(c *gin.Context, apictx *ApiSession) (interface{}, error) {
 
 func SearchByImg(c *gin.Context, apictx *ApiSession) (interface{}, error) {
 	url := c.Query("url")
+	fmt.Println("search url =>: ", url)
 	if !strings.Contains(url, "http") {
 		return nil, NewError("参数错误")
 	}

+ 2 - 9
sku3d/sku3d/test/index.html

@@ -149,15 +149,8 @@
             }
 
             try {
-                const response = await fetch(`${baseUrl}/image/fassi/list`, {
-                    method: 'POST',
-                    headers: {
-                        'Authorization': token,
-                        'Content-Type': 'application/json'
-                    },
-                    body: JSON.stringify({
-                        url: imageUrl
-                    })
+                const response = await fetch(`${baseUrl}/image/fassi/list?url=${imageUrl}`, {
+                    method: 'GET'
                 });
 
                 const data = await response.json();

+ 1 - 1
sku3d/sku3d/test/test.http

@@ -15,7 +15,7 @@ Content-Type: application/json
 }
 
 ### 搜索图片
-GET  {{baseUrl}}/image/fassi/list
+GET  {{baseUrl}}/image/fassi/list?url=https://sku3d-test.obs.cn-east-3.myhuaweicloud.com/tmp/a3.png
 Authorization: {{token}}
 Content-Type: application/json