O biblioteca agnostica cadru Node.js pentru (de) serializarea datelor dvs. catre API JSON (compatibil 1.0).
psst: Daca aveti nevoie de un panou de administrare pentru aplicatia dvs., verificati ce creez in jobul meu de zi cu zi la forestadmin.com – foloseste jsonapi-serializer pentru a de / serializa datele de date provenind de la / catre API-uri.
- Migrati de la 2.0 la 3.0
- Migrati de la 1.x la 2.0
Instalare
$ npm instalati jsonapi-serializer
Documentatie
Serializare
Functia JSONAPISerializer ia doua argumente:
- tip: tipul de resursa.
- opts: Optiunile de serializare.
Apelarea metodei de serializare pe obiectul returnat va va serializa datele (obiectul sau matricea) intr-un document JSONAPI conform.
Optiune de serializare disponibila (opts argument)
- atribute : O serie de atribute de afisat. Puteti defini un atribut ca optiune daca doriti sa definiti unele relatii (incluse sau nu).
- ref : Daca este prezent, este considerat o relatie.
- inclus : Considerati relatiile ca document compus. Implicit: adevarat.
- id : camp de identificare configurabil pentru resursa. Implicit: id.
- atribute : O serie de atribute de afisat.
- topLevelLinks : un obiect care descrie legaturile de nivel superior. Valorile pot fi sir sau o functie
- dataLinks : un obiect care descrie legaturile din interiorul datelor. Valorile pot fi sir sau o functie (a se vedea exemplele de mai jos)
- dataMeta : un obiect care descrie meta date interioare. Valorile pot fi o valoare simpla sau o functie (a se vedea exemplele de mai jos)
- relationLinks : un obiect care descrie legaturile din interiorul relatiilor. Valorile pot fi sir sau o functie
- relationMeta : un obiect care descrie relatiile meta din interior. Valorile pot fi o valoare simpla sau o functie
- ignoreRelationshipData : Nu includeti cheia de date in relatie. Implicit: fals.
- keyForAttribute : O functie sau un sir pentru a personaliza atributele. Functiilor sunt transmise atributul ca un singur argument si se asteapta sa fie returnat un sir. Sirurile sunt pseudonime pentru functii incorporate pentru conversii de cazuri obisnuite. Optiunile includ: dash-case (implicit), lisp-case, spinal-case, kebab-case, underscore_case, snake_case, camelCase, CamelCase.
- nullIfMissing : setati atributul la nul daca lipseste din datele de intrare. Implicit: fals.
jovencitas folladoras me follo a mi vecina
pareja española follando descargar peliculas porno completas
tragando semen xxx tangas xxx
videos porno caseros españoles maduros en pajilleros
paja en publico nonude model
carne de mercado xxx españolas follando por dinero
cincuentona española follando maduras españolas amater
madura tetona viejas mexicanas follando
penes grandes porno en cine convencional
heidi porno miriam sanchez videos porno
follando con abuelas porno gay cerdo
follada a traicion revistas xxx
videos de travestis en español necrofilia xxx
porno gitanas españolas tetas saltarinas
me corro en la boca de mama feet hentai
ana marco primer anal follada en tanga
chicas masturbando a chicos porno friki
trio con mi esposa vidio xxxx
maduras corriendose paja en publico
brazzers videos completos porno violacion gay - pluralizeType : Un boolean pentru a indica daca tipul trebuie sa fie pluralizat sau nu. Implicit: adevarat.
- typeForAttribute : O functie care mapeaza atributul (transmis ca argument) la tipul pe care doriti sa il suprascrieti. Daca revine nedefinit, ignora semnalizatorul pentru acel atribut. Optiunea pluralizeType este ignorata daca este setata.
- meta : un obiect care include metainformatii non-standard. Valorile pot fi o valoare simpla sau o functie
- transformare : o functie pentru a transforma fiecare inregistrare inainte de serializare.
Exemple
- Exemplu expres
- Utilizare simpla
- Mai multe exemple in teste
Utilizare simpla:
Rezultatul va fi ceva de genul:
Deserializarea
Functia JSONAPIDeserializer are un argument:
- opts: Optiunile de deserializare.
Apelarea metodei de deserializare pe obiectul returnat va deserializa datele dvs. (document JSONAPI) la un obiect javascript simplu.
Optiunea de deserializare disponibila (opts argument)
- keyForAttribute : O functie sau un sir pentru a personaliza atributele. Functiilor sunt transmise atributul ca un singur argument si se asteapta sa fie returnat un sir. Sirurile sunt pseudonime pentru functii incorporate pentru conversii de cazuri obisnuite. Optiunile includ: dash-case (implicit), lisp-case, spinal-case, kebab-case, underscore_case, snake_case, camelCase, CamelCase.
- AN_ATTRIBUTE_TYPE : numele acestei optiuni corespunde tipului unei relatii din documentul dvs. JSONAPI.
- valueForRelationship : O functie care returneaza orice vrei pentru o relatie (vezi exemplele de mai jos) poate returna o Promisiune (vezi testele)
- transformare : o functie pentru a transforma fiecare inregistrare dupa deserializare.
Exemple
- Utilizare simpla
- Relatie
- Mai multe exemple in teste
Utilizare simpla:
Relatie:
Note despre promisiuni
Optiunea de deserializare valueForRelationship accepta returnarea unei promisiuni si astfel aceasta biblioteca foloseste promisiuni sub capota. bluebird a fost folosit anterior ca dependenta, dar din cauza problemelor legate de dimensiunea pachetului atat pe nod cat si pe web, a fost inlocuit cu promisiuni native.
Bluebird este cu siguranta mai performant decat Promisiunile native. Daca performanta este o preocupare majora Promisiunea poate fi poliamplificata la nivel global
- nod – prin global.Promise = require (‘bluebird’)
- web – Global Promise este atribuit automat atunci cand se utilizeaza eticheta script pentru a incarca bluebird
Eroare in serializare
Functia JSONAPIError ia un argument:
- opts: Optiunile de eroare. Toate optiunile sunt optionale.
Optiunea de eroare disponibila (optiunea argumentului)
- id : un identificator unic pentru aceasta aparitie speciala a problemei.
- status : codul de stare HTTP aplicabil acestei probleme, exprimat ca valoare sir.
- cod : un cod de eroare specific aplicatiei, exprimat ca valoare sir.
- titlu : un rezumat scurt, lizibil de catre om al problemei care NU TREBUIE sa se schimbe de la aparitia la aparitia problemei, cu exceptia scopurilor de localizare.
- detaliu : o explicatie lizibila de om specifica acestei aparitii a problemei. Ca si titlul, valoarea acestui camp poate fi localizata.
- sursa : un obiect care contine referinte la sursa erorii, incluzand optional oricare dintre urmatorii membri:
- indicator : un indicator JSON [RFC6901] catre entitatea asociata din documentul de cerere [de exemplu „/ date” pentru un obiect de date primar sau „/ data / attribute / title” pentru un atribut specific].
- parametru : un sir care indica parametrul de interogare URI care a provocat eroarea.
- links : un obiect de linkuri care contine urmatorii membri:
- despre : un link care duce la detalii suplimentare despre aceasta aparitie speciala a problemei.
- meta : un obiect meta care contine meta-informatii non-standard despre eroare.
Exemple
- Utilizare simpla
- Mai multe exemple
Utilizare simpla:
Rezultatul va fi ceva de genul:
MIT








