Daxili kod strukturunun API Reference-i¶
API¶
integrify.api.APIClient
¶
APIClient(name, base_url, default_handler=None, sync=True)
API inteqrasiyaları üçün klient
PARAMETER | DESCRIPTION |
---|---|
name |
Klient adı. Logging üçün istifadə olunur.
TYPE:
|
base_url |
API-lərin əsas (kök) url-i
TYPE:
|
default_handler |
default API handler. Bu handler əgər hər hansı bir API-yə handler register olunmadıqda istifadə olunur.
TYPE:
|
sync |
Sync (True) və ya Async (False) klient seçimi. Default olaraq sync seçilir.
TYPE:
|
add_url
¶
add_url(route_name, url, verb)
Yeni endpoint əlavə etmə funksiyası
PARAMETER | DESCRIPTION |
---|---|
route_name |
Funksionallığın adı (məs.,
TYPE:
|
url |
Endpoint url-i
TYPE:
|
verb |
Endpoint metodunun (
TYPE:
|
set_default_handler
¶
set_default_handler(handler_class)
Sorğulara default handler setter-i
PARAMETER | DESCRIPTION |
---|---|
handler_class |
Default handler class-ı
TYPE:
|
add_handler
¶
add_handler(route_name, handler_class)
Endpoint-ə handler əlavə etmək method-u
PARAMETER | DESCRIPTION |
---|---|
route_name |
Funksionallığın adı (məs.,
TYPE:
|
handler_class |
Həmin sorğunun (və response-unun) payload handler class-ı
TYPE:
|
integrify.api.APIPayloadHandler
¶
APIPayloadHandler(req_model=None, resp_model=None)
Sorğu və cavab data payload-ları üçün handler class-ı
PARAMETER | DESCRIPTION |
---|---|
req_model |
Sorğunun payload model-i
TYPE:
|
resp_model |
Sorğunun cavabının payload model-i
TYPE:
|
pre_handle_payload
¶
pre_handle_payload(*args, **kwds)
Sorğunun payload-ının pre-processing-i. Əgər istənilən payload-a əlavə datanı lazımdırsa (bütün sorğularda eyni olan data), bu funksiyadan istifadə edə bilərsiniz.
Misal üçün: Bax EPointClientClass
handle_payload
¶
handle_payload(*args, **kwds)
Verilən argumentləri self.req_model
formatında payload-a çevirən funksiya.
self.req_model
qeyd edilməyibsə, bu funksiya override olunmalıdır (!).
post_handle_payload
¶
post_handle_payload(data)
Sorğunun payload-ının post-processing-i. Əgər sorğu göndərməmişdən qabaq son datanın üzərinə əlavələr lazımdırsa, bu funksiyadan istifadə edə bilərsiniz.
Misal üçün: Bax EPointClientClass
PARAMETER | DESCRIPTION |
---|---|
data |
TYPE:
|
handle_request
¶
handle_request(*args, **kwds)
Sorğu üçün payload-u hazırlayan funksiya. Üç mərhələ icra edir,
və bu mərhələlər override oluna bilər. (Misal üçün:
Bax EPointClientClass
)
- Pre-processing
- Payload hazırlama
- Post-processing
handle_response
¶
handle_response(resp)
Sorğudan gələn cavab payload-ı handle edən funksiya. self.resp_model
schema-sı
verilibsə, onunla parse və validate olunur, əks halda, json/dict formatında qaytarılır.
integrify.api.APIExecutor
¶
APIExecutor(name, sync=True)
API sorgularını icra edən class
PARAMETER | DESCRIPTION |
---|---|
name |
API klientin adı. Logging üçün istifadə olunur.
TYPE:
|
sync |
Sync (True) və ya Async (False) klient seçimi. Default olaraq sync seçilir.
TYPE:
|
sync_req
¶
sync_req(url, verb, handler, *args, **kwds)
Sync sorğu atan funksiya
PARAMETER | DESCRIPTION |
---|---|
url |
Sorğunun full url-i
TYPE:
|
verb |
Sorğunun metodun (
TYPE:
|
handler |
Sorğu və cavabın payload handler-i
TYPE:
|
async_req
async
¶
async_req(url, verb, handler, *args, **kwds)
Async sorğu atan funksiya
PARAMETER | DESCRIPTION |
---|---|
url |
Sorğunun full url-i
TYPE:
|
verb |
Sorğunun metodun (
TYPE:
|
handler |
Sorğu və cavabın payload handler-i
TYPE:
|
Schema¶
integrify.schemas.APIResponse
¶
Bases: BaseModel
, Generic[ResponseType]
Cavab sorğu base payload tipi. Generic tip-i qeyd etmıəklə sorğu cavabını validate edə bilərsiniz.
ok
class-attribute
instance-attribute
¶
ok = Field(validation_alias='is_success')
Cavab sorğusunun statusu 400dən kiçikdirsə
body
class-attribute
instance-attribute
¶
body = Field(validation_alias='content')
Cavab sorğusunun body-si
convert_to_dict
¶
convert_to_dict(v)
Binary content-i dict-ə çevirərək, validation-a hazır vəziyyətə gətirir.
integrify.schemas.PayloadBaseModel
¶
Bases: BaseModel
from_args
classmethod
¶
from_args(*args, **kwds)
Verilən *args
və **kwds
(və ya **kwargs
) parametrlərini birləşdirərək
Pydantic validasiyası edən funksiya. Positional arqumentlər üçün (*args
) Pydantic
modelindəki field-lərin ardıcıllığı və çağırılan funksiyada parametrlərinin ardıcıllığı
EYNİ OLMALIDIR, əks halda, bu method yararsızdır.