Ladon on Python-pohjainen kehys altistaa toimintoja useita eri verkkopalveluista. & Nbsp; esimerkiksi SOAP, jsonrpc, HTTP POST argumentteja, jne
1. toteuttaa ...
Toteuta palvelu luokka koristamaan menetelmiä haluat paljastaa kanssa ladonize sisustajalle.
2. Kääri se ...
Kääri palveluun Ladon n WSGI hakemus luokan ...
3. Paljasta se ...
WSGI sovelluksen avulla Ladon minimaalinen WSGI palvelinluokan, Apache2 / mod_wsgi tai muulla WSGI middleware ...
Mitä uutta strong> tässä julkaisussa:
< ul>
Mitä uutta strong> versiossa 0.8.1:
- Lisätty pohtimatta virhereaktio esineitä, joten on mahdollista jäljittää viat takaisin erityisiä pyyntöjä.
Mitä uutta strong> versiossa 0.7.3:
- Lisätty palvelun laajuinen puunkorjuu fascilities kautta LadonWSGIApplication n rakentaja. Alustavat log tasot ovat:
- ladon.server.NO_LOGGING = 0
- ladon.server.LOG_REQUEST_ACCESS = 1
- ladon.server.LOG_REQUEST_DICT = 2
- ladon.server.LOG_RESPONSE_DICT = 4
- ladon.server.LOG_EXECUTION_TIME = 8
Mitä uutta strong> versiossa 0.7.2:
- Lisätty mahdollisuus käyttää valita eri kustantaminen tyyppien kirjoitettaessa inline dokumentaatio verkossa API-dokumentaation. Mahdolliset kustantajat ovat & quot; raaka & quot ;, & quot; pre & quot; ja & quot; docutils & quot; - Esimerkki:
- ladonize ([PORTABLE_STRING], rtype = [Tiedosto])
- def ladata (itse, nimet):
- & quot; & quot; & quot;
- publisher: docutils
- - Test
- - Testi 2
- + ------------ + ------------ + ----------- +
- | Header 1 | Header 2 | Header 3 |
- + ============ + ============ + =========== +
- | runko rivi 1 | sarake 2 | sarake 3 |
- + ------------ + ------------ + ----------- +
- | runko rivi 2 | Solut voivat ulottua sarakkeita. |
- + ------------ + ------------ + ----------- +
- | ruumiin rivi 3 | solut voivat | - Cells |
- + ------------ + span rivejä. | - Sisältävät |
- | ruumiin rivi 4 | | - lohkot. |
- + ------------ + ------------ + ----------- +
- Kode Eksempel ::
- def testi (itse):
- Print & quot; oijfwe & quot;
- Lataa useita tiedostoja kerralla. Kunkin nimen nimet palvelun
- yrittää löytää tiedoston palvelu / upload, joka vastaa sitä. Jos nimeä ei
- ovat matching tiedosto sitä ei huomioida.
- param nimet: luettelo tiedostojen nimet
- rtype: Palauttaa listan Tiedoston esineiden
- & quot; & quot; & quot;
- maailmanlaajuinen upload_dir
- vastaus = []
- varten nimi nimet:
- f = Tiedosto ()
- f.name = nimi
- f.data = kiinnitys (avoin (liittyä (upload_dir, nimi), "RB"))
- vastaus + = [f]
- paluu vastaus
Mitä uutta strong> versiossa 0.7.1:
- Kiinteä vika 974655 Lisätty välityspalvelimen kautta ominaisuus Python jsonwsp asiakas
Mitä uutta strong> versiossa 0.7.0:
- Kiinteät bugeja 926442 ja 926445
Mitä uutta strong> versiossa 0.6.6:
- Uusi sanakirja perustuu tyypin määritelmä LadonType attribuutteja. Kunnes versio 0.6.6 kaikki LadonType attribuutteja oli viite tyypin tai luettelon tyypin suoraan. Kun sanakirja määritelmien on mahdollista palvelua kehittäjä siirtää tarkempia ominaisuuksia noin määritteitä, kuten asiakirjat linjat, oletusarvo vai onko nullable (Ei mitään) vai ei. Vanhanajan LadonType määritteiden määritykset ovat edelleen voimassa, ja siksi tämä muutos tarjoaa taaksepäin yhteensopivuus. Integrointi nullable on rakennettu saippua ja jsonwsp rajapintoja. Esimerkki:
- luokan Person (LadonType):
- käyttäjätunnus = PORTABLE_BYTES # vanhanajan
- ryhmät = [PORTABLE_BYTES]
- mobiili = {# uudenlainen
- "tyyppi": PORTABLE_BYTES,
- 'nullable ": Totta,
- 'doc': & quot; Käyttäjän matkapuhelinnumero. & Quot; }
- valid_user = {
- "tyyppi": bool,
- 'nullable': False,
- 'default': False,
- 'doc ": [" Onko käyttäjä voimassa. "," Jos ei anneta, käyttäjä ei kelpaa. "]}
Mitä uutta strong> versiossa 0.6.5:
- Viankäsittely lopulta täytäntöön. liitäntöjen on nyt pantava täytäntöön FaultHandler peritäänkö BaseFaultHandler luokka. Vika käsittelijät on toteutettu sekä SOAP ja JSONWSP rajapintoja. Kaikki poikkeukset occure alle etämetodikutsu kalastetaan Ladon n lähettäjää ja lähetetään liitäntävirhe käsittelijä. Käytä ServerFault tai ClientFault poikkeuksia toteutetaan ladon.exceptions.service nostaa joko palvelimen vika tai syyttää vika asiakas. Muita poikkeuksia, jotka saattavat occure Huoltokannassa etämetodikutsu nähdään hallitsemattomia Server Viat, ja muuntaa sellaisiksi lähettäjää.
- Uusi kiinnitys viittaus muodossa cidx :. Tämä muoto Katsotaan asiakas postitse pyyntöä, on viittaukset kiinnityksen osaan indeksin sijasta Content-Id.
Mitä uutta strong> versiossa 0.6.4:
- JSONWSPClient __init __ (kuvaus = None, url = Ei ) kestää kuvaus url kuin ensimmäinen väite tai hakusana & quot; kuvaus & quot ;. Uusi avainsana argumentti & quot; url & quot; voidaan siirtää sijasta kuvaus jos jsonwsp API tunnetaan. Kompromissi käyttää url on, että ei ole luonut paikanvaraajaan menetelmiä JSONWSPClient objekti, vaan sinun täytyy soittaa menetelmiä kautta call_method () menetelmä.
- CustomResponse - Ladon tarjoaa nyt mahdollisuuden määritellä omia vastaus määrätyillä menetelmillä. Esimerkiksi voit tehdä Ladon vastata selaimella ladata vastausta tietyn palvelun menetelmällä. Esimerkki:
- class HTTPAttachmentResponse (CustomResponse):
- def __init __ (self, fileobj, tiedostonimen, tiedoston koko, lohkokokoa = 4096):
- self.fileobj = fileobj
- self.filename = tiedostonimi
- self.filesize = filesize
- self.blocksize = lohkokokoa
- def response_headers (itse):
- # TODO: Käsittele koodaustapoja tiedostonimiä
- Tulosta [('Content-Disposition "," kiinnitys; filename = & quot;% s & quot;'% self.filename.encode (utf-8 ")),
- ('Content-Type "," application / voima-lataus),
- ('Content-Length ", str (self.filesize))]
- paluu [
- ('Content-Disposition "," kiinnitys; filename = & quot;% s & quot;'% self.filename.encode (utf-8 ")),
- ('Content-Type "," application / voima-lataus),
- ('Content-Length ", str (self.filesize))]
- def response_data (itse):
- tuotto ITER (lambda: self.fileobj.read (self.blocksize), '')
- Bug 852234 - Poistettu nillable ja minOccurs määritteet SOAP osa elementtejä.
- Bug 861193 - Poistettu "_" ja "-" muuntaminen complexType elementtejä.
- Bug 884431 - Kiinteä boolean tyyppi SOAP vaste esineitä.
Vaatimukset :
- Python
Kommentteja ei löytynyt