external knowledge
This commit is contained in:
parent
4fd57929df
commit
f6c8390b0b
@ -1,6 +1,7 @@
|
||||
import json
|
||||
from datetime import datetime, timezone
|
||||
|
||||
from core.helper import ssrf_proxy
|
||||
from extensions.ext_database import db
|
||||
from extensions.ext_redis import redis_client
|
||||
from libs import helper
|
||||
@ -169,8 +170,21 @@ class ExternalDatasetService:
|
||||
|
||||
return dataset
|
||||
|
||||
|
||||
@staticmethod
|
||||
def process_external_api(api_template_id: str, data_source: dict, process_parameter: dict):
|
||||
pass
|
||||
def process_external_api(self, headers: dict[str, Any]) -> httpx.Response:
|
||||
"""
|
||||
do http request depending on api bundle
|
||||
"""
|
||||
kwargs = {
|
||||
'url': self.server_url,
|
||||
'headers': headers,
|
||||
'params': self.params,
|
||||
'timeout': (self.timeout.connect, self.timeout.read, self.timeout.write),
|
||||
'follow_redirects': True,
|
||||
}
|
||||
|
||||
if self.method in ('get', 'head', 'post', 'put', 'delete', 'patch'):
|
||||
response = getattr(ssrf_proxy, self.method)(data=self.body, files=self.files, **kwargs)
|
||||
else:
|
||||
raise ValueError(f'Invalid http method {self.method}')
|
||||
return response
|
Loading…
Reference in New Issue
Block a user