django-Akamai yra Django programa, kuri tarnauja kaip priemonė vykdyti prapūtimo prašymus iš Django Apps naudojant Akamai CCUAPI. Ištirpusį prašymai vykdomi pagal pareikalavimą arba, pasirinktinai, dedamas į eilę naudojant salierų.
Būtini nustatymai:
AKAMAI_CCUAPI_USERNAME = 'ccuapi_username "
AKAMAI_CCUAPI_PASSWORD = 'ccuapi_password "
AKAMAI_CCUAPI_NOTIFICATION_EMAIL = 'your@email.com "
Yra būdų, kaip naudoti šią programą savo app įvairovė.
PASTABA: Šiuo metu tik 100 adresai bus išvalytas už prašymą, reikalaudamas, kad jūs siunčiate papildomų signalus / sukurti papildomas užduotis / call prapūtimo () vėl su atskirais gabalėliais URL / objektų. CCUAPI nustato ribines "apie" 100 URL 400 simbolių kiekvienoje, todėl aš bandė padaryti elgesys permatomi, tai leidžia galutiniam vartotojui pamatyti kiekvieno prašymo rezultatą ir atitinkamai reaguoti.
Pasikonsultuokite AKAMAI dokumentaciją visą informaciją apie API. Ši programa yra siejama su modifikuotu kopiją https://ccuapi.akamai.com/ccuapi-axis.wsdl kurie dirba su pamuilės.
Naudodami Signalai "
signals.py apibrėžia du signalus, viena, kad pradeda prapūtimo užklausimą tiesiogiai, o kitas, kad eilės prašymą. Eilių signalas sąlygiškai apibrėžta ir priklauso nuo sėkmingo importo PurgeRequestTask, kuri priklauso nuo django-salierų yra įdiegta.
Siųsdami šiuos signalus iš kitų apps, galite pereiti į dalykų kaip patogiau siuntėjo įvairovė. Siuntėjas gali būti vienas URL eilutę, iš URL stygos sąrašas individualus Django objektas arba QuerySet. Jei vežama objekto ar QuerySet, tada get_absolute_url () turi būti apibrėžta kiekvieno objekto.
Pavyzdys signalizacijos nedelsiant atlikti prašymą:
>>> Iš akamai.signals importuoti 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)
Arba, jei norite eilėje prašymą naudojant Salierai:
>>> Queue_purge_request.send (obj)
Naudodami Užduotys
Norėdami naudoti šią užduotį tiesiogiai importo PurgeRequestTask nuo tasks.py thusly:
>>> Iš akamai.tasks importo PurgeRequestTask
>>> Obj = MyObject.objects.get (PK = 3)
>>> Rezultatas = PurgeRequestTask.delay (obj)
>>> Spausdinimo rezultatas
1
Naudojant PurgeRequest tiesiogiai
Jūs taip pat gali importuoti PurgeRequest iš purge.py ir naudoti jį tiesiogiai. Ne todėl, kad tik 100 URL bus siunčiami su kiekvienu prapūtimo prašymu dėl iki Akamai nustatytų ribų. Jei norite pridėti daugiau nei 100 URL, prapūtimo () turės būti vadinamas, kol nė vienas lieka.
Jei nenorite pateikti vartotojo vardą ir slaptažodį kurdami PurgeRequest objektą, tada jūsų projekto settings.py bus tikrinama AKAMAI_CCUAPI_USERNAME ir AKAMAI_CCUAPI_PASSWORD. Nepateikus prisijungimo informacija per arba mechanizmas rezultatų per NoAkamaiUsernameProvidedException ir / ar NoAkamaiPasswordProvidedException.
Pavyzdys:
>>> Pr = PurgeRequest (vardas = "ccuapi_user", slaptažodžio = "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 = "Sėkmė".
& Nbsp; sessionid = "987654321"
& Nbsp; estTime = 420
& Nbsp; uriIndex = -1
& Nbsp; modifikatorius [] =
& Nbsp;}
>>> print pr.urls
[]
Reikalavimai :
- Python
- Django
Komentarai nerastas