mirror of
https://github.com/BoardWare-Genius/jarvis-models.git
synced 2025-12-13 16:53:24 +00:00
fixup
This commit is contained in:
@ -17,7 +17,7 @@ def read_binay(io):
|
||||
def new_map():
|
||||
return Literal({})
|
||||
|
||||
def set_map(map: dict, key, value):
|
||||
def set_map_value(map: dict, key, value):
|
||||
map[key] = value
|
||||
return map
|
||||
|
||||
@ -50,18 +50,6 @@ class Workflow(Blackbox):
|
||||
|
||||
async def processing(self, *args, **kwargs):
|
||||
request = args[0]
|
||||
content_type = request.headers.get("Content-Type")
|
||||
if re.match(r"application/json", content_type) is not None:
|
||||
return await self.handler_with_json_mode(request)
|
||||
elif re.match(r"multipart/form-data", content_type) is not None:
|
||||
return await self.handler_with_formdata_mode(request)
|
||||
return Response(content="Invalid content type", status_code=400)
|
||||
|
||||
def valid(self, *args, **kwargs) -> bool:
|
||||
return super().valid(*args, **kwargs)
|
||||
|
||||
# json mode 保留 script 字段給 runtime 解析
|
||||
async def handler_with_json_mode(self,request: Request):
|
||||
json = await request.json()
|
||||
content = None
|
||||
mdeia_type = None
|
||||
@ -75,7 +63,7 @@ class Workflow(Blackbox):
|
||||
def add_header(key, value):
|
||||
nonlocal headers
|
||||
headers[key] = value
|
||||
script = json["script"]
|
||||
script = request.query_params["script"]
|
||||
t = Tokenizer()
|
||||
t.init(script)
|
||||
runtime = Runtime(
|
||||
@ -83,7 +71,7 @@ class Workflow(Blackbox):
|
||||
exteral_fun={
|
||||
"print": print,
|
||||
"new_map": new_map,
|
||||
"set_map": set_map,
|
||||
"set_map_value": set_map_value,
|
||||
"get_map_value": get_map_value,
|
||||
"set_content": set_content,
|
||||
"set_media_type": set_media_type,
|
||||
@ -96,10 +84,9 @@ class Workflow(Blackbox):
|
||||
ast = program_parser(t)
|
||||
ast.exec(runtime)
|
||||
return Response(content=content, media_type=mdeia_type, headers=headers)
|
||||
# formdata mode 保留 script 字段給 runtime 解析
|
||||
async def handler_with_formdata_mode(self,request: Request):
|
||||
json = await request.json()
|
||||
print("form")
|
||||
|
||||
def valid(self, *args, **kwargs) -> bool:
|
||||
return super().valid(*args, **kwargs)
|
||||
|
||||
async def fast_api_handler(self, request: Request):
|
||||
return await self.processing(request)
|
||||
|
||||
Reference in New Issue
Block a user