mirror of
https://git.mirrors.martin98.com/https://github.com/infiniflow/ragflow.git
synced 2025-06-04 03:13:58 +08:00
Fix: PUT method does not work as expected with Invoke component (#5081)
### What problem does this PR solve? Invoke component can be used to call third party services. Tried GET/POST/PUT from web UI, and found PUT request failed like this: (test api: api/v1/chats/<assistant_id>) ``` {"code":100,"data":null,"message":"AttributeError("'NoneType' object has no attribute 'get'")"} ``` Root cause: Invoke PUT with a 'data=args' parameter, which is a form-encoded data, however the default content type setting of request header is application/json. The test api could not deal with such case. Fix: use the 'json' parameter of reqeusts.put(), same as Invoke POST. Do not use the 'data' parameter. Another way is to use 'data=json.dumps(args)'. ### Type of change - [x] Bug Fix (non-breaking change which fixes an issue)
This commit is contained in:
parent
3cffadc7a2
commit
189007e44d
@ -95,7 +95,7 @@ class Invoke(ComponentBase, ABC):
|
||||
|
||||
if method == 'put':
|
||||
response = requests.put(url=url,
|
||||
data=args,
|
||||
json=args,
|
||||
headers=headers,
|
||||
proxies=proxies,
|
||||
timeout=self._param.timeout)
|
||||
|
Loading…
x
Reference in New Issue
Block a user