Selaa lähdekoodia

fix API tool's schema not support array (#6006)

非法操作 9 kuukautta sitten
vanhempi
commit
bf2268b0af
1 muutettua tiedostoa jossa 4 lisäystä ja 1 poistoa
  1. 4 1
      api/core/tools/tool/api_tool.py

+ 4 - 1
api/core/tools/tool/api_tool.py

@@ -249,9 +249,12 @@ class ApiTool(Tool):
                 elif property['type'] == 'null':
                     if value is None:
                         return None
-                elif property['type'] == 'object':
+                elif property['type'] == 'object' or property['type'] == 'array':
                     if isinstance(value, str):
                         try:
+                            # an array str like '[1,2]' also can convert to list [1,2] through json.loads
+                            # json not support single quote, but we can support it
+                            value = value.replace("'", '"')
                             return json.loads(value)
                         except ValueError:
                             return value