mirror of
https://git.mirrors.martin98.com/https://github.com/langgenius/dify.git
synced 2025-08-12 07:19:08 +08:00
Fix/add retry mechanism to billing service request handling (#12006)
Signed-off-by: -LAN- <laipz8200@outlook.com>
This commit is contained in:
parent
2bf33c4dd2
commit
425cc1ea85
@ -1,6 +1,7 @@
|
||||
import os
|
||||
|
||||
import requests
|
||||
import httpx
|
||||
from tenacity import retry, retry_if_not_exception_type, stop_before_delay, wait_fixed
|
||||
|
||||
from extensions.ext_database import db
|
||||
from models.account import TenantAccountJoin, TenantAccountRole
|
||||
@ -39,11 +40,17 @@ class BillingService:
|
||||
return cls._send_request("GET", "/invoices", params=params)
|
||||
|
||||
@classmethod
|
||||
@retry(
|
||||
wait=wait_fixed(2),
|
||||
stop=stop_before_delay(10),
|
||||
retry=retry_if_not_exception_type(httpx.RequestError),
|
||||
reraise=True,
|
||||
)
|
||||
def _send_request(cls, method, endpoint, json=None, params=None):
|
||||
headers = {"Content-Type": "application/json", "Billing-Api-Secret-Key": cls.secret_key}
|
||||
|
||||
url = f"{cls.base_url}{endpoint}"
|
||||
response = requests.request(method, url, json=json, params=params, headers=headers)
|
||||
response = httpx.request(method, url, json=json, params=params, headers=headers)
|
||||
|
||||
return response.json()
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user