Django-Akamai ay isang Django app na nagsisilbing isang paraan upang magsagawa ng mga kahilingan magpurga mula Django app gamit ang Akamai CCUAPI. Linisin ang mga kahilingan ay ginagawa on demand o, opsyonal, inilagay sa isang queue gamit ang kintsay.
Kinakailangang mga setting:
AKAMAI_CCUAPI_USERNAME = 'ccuapi_username'
AKAMAI_CCUAPI_PASSWORD = 'ccuapi_password'
AKAMAI_CCUAPI_NOTIFICATION_EMAIL = 'your@email.com'
Mayroong iba't ibang mga paraan upang gamitin ang app na ito sa iyong app.
PAKITANDAAN: Sa kasalukuyan, ang mga URL 100 lamang ay purged sa bawat hiling, na nangangailangan na magpadala sa iyo ng karagdagang mga signal / lumikha ng karagdagang mga gawain / tawag pamurga () muli na may nakahiwalay na chunks ng mga URL / bagay. CCUAPI ang nagpapataw ng isang limitasyon ng "tungkol sa" 100 mga URL ng mga 400 character bawat isa, kaya sinubukan ko upang gawing transparent ang pag-uugali at payagan ang mga end user upang makita ang mga resulta ng bawat kahilingan at tumugon nang naaayon.
Sumangguni sa mga dokumento ng Akamai para sa buong impormasyon tungkol sa API. Ang app na ito ay kasama ang isang binagong kopya ng https://ccuapi.akamai.com/ccuapi-axis.wsdl na gumagana sa pinagsabunan.
Ang paggamit ng mga signal
signals.py tumutukoy sa dalawang mga signal, isa na nagpasimula nang direkta sa isang kahilingan magpurga, at isa pa na queues ang kahilingan. Ang signal queuing ay nang may pasubali na tinukoy at nakadepende sa matagumpay na pag-import ng PurgeRequestTask, na nakasalalay sa Django-kintsay ini-install.
Kapag nagpapadala ng mga signal mula sa iba pang mga app, maaari kang pumasa sa iba't ibang mga bagay na tulad ng sa nagpadala para sa kaginhawahan. Ang nagpadala ay maaaring maging isang solong string ng URL, ang isang listahan ng mga string ng URL, ang isang indibidwal Django bagay, o isang QuerySet. Kung ang pagpasa sa isang object o QuerySet, pagkatapos ay get_absolute_url () ay dapat na tinukoy sa bawat object.
Halimbawa ng pagbibigay ng senyas upang agad na isagawa ang kahilingan:
>>> Mula akamai.signals-import purge_request, queue_purge_request
>>> Obj = MyObject.objects.get (PK = 3)
>>> Obj.get_absolute_url ()
u'http: //www.example.com/blahblah.html '
>>> Purge_request.send (obj)
O, sa queue ang kahilingan gamit ang kintsay:
>>> Queue_purge_request.send (obj)
Ang paggamit ng Gawain
Upang gamitin ang gawain mismo, pag-import PurgeRequestTask mula tasks.py thusly:
>>> Mula akamai.tasks import PurgeRequestTask
>>> Obj = MyObject.objects.get (PK = 3)
>>> Resulta = PurgeRequestTask.delay (obj)
>>> Resulta sa pag-print
1
Ang paggamit ng PurgeRequest direktang
Maaari mo ring i-import PurgeRequest mula purge.py at direktang gamitin ito. Hindi na url 100 lamang ang ipapadala sa bawat kahilingan dumumi, dahil sa mga limitasyon na itinakda ng Akamai. Kung nagdagdag ka ng higit sa 100 mga url, pamurga () ay kailangang ma-tinatawag na hanggang sa wala mananatiling.
Kung hindi ka magbibigay ng isang username at password kapag lumilikha ng PurgeRequest bagay, pagkatapos ay i-settings.py iyong proyekto ay naka-check para sa AKAMAI_CCUAPI_USERNAME at AKAMAI_CCUAPI_PASSWORD. Ang pagkabigong magbigay ng impormasyon sa pag-login sa pamamagitan ng alinman sa mga resulta ng mekanismo sa isang NoAkamaiUsernameProvidedException at / o NoAkamaiPasswordProvidedException.
Halimbawa:
>>> PR = PurgeRequest (username = "ccuapi_user", password = "1234567")
>>> Pr.add ("http://www.example.com/url-1.html")
>>> Pr.add (u "http://www.example.com/url-2.html")
>>> Req = pr.purge ()
>>>-Print pr.last_result
(PurgeResult) {
& Nbsp; resultCode = 100
& Nbsp; resultMsg = "Tagumpay."
& Nbsp; sessionid = "987654321"
& Nbsp; estTime = 420
& Nbsp; uriIndex = -1
& Nbsp; modifier [] =
& Nbsp;}
>>>-Print pr.urls
[]
Mga Kinakailangan :
- Python
- Django
Mga Komento hindi natagpuan