| @@ -39,6 +39,7 @@ def make_request(method, url, max_retries=SSRF_DEFAULT_MAX_RETRIES, **kwargs): | |||
| ) | |||
| retries = 0 | |||
| stream = kwargs.pop("stream", False) | |||
| while retries <= max_retries: | |||
| try: | |||
| if dify_config.SSRF_PROXY_ALL_URL: | |||
| @@ -52,6 +53,8 @@ def make_request(method, url, max_retries=SSRF_DEFAULT_MAX_RETRIES, **kwargs): | |||
| response = client.request(method=method, url=url, **kwargs) | |||
| if response.status_code not in STATUS_FORCELIST: | |||
| if stream: | |||
| return response.iter_bytes() | |||
| return response | |||
| else: | |||
| logging.warning(f"Received status code {response.status_code} for URL {url} which is in the force list") | |||