Un manipulator de specificatii Go JSONAPI

TestCoverage

Un manipulator de (de) serializare pentru scrierea software-ului compatibil JSON API Specification in Go. Functioneaza si cu Ember / Ember-Data!

  1. JSH
  • Motivatie
  • Caracteristici
  • Stabilitate
  1. SA
  2. JSH-API

jsh – JSON Specification Handler

Pentru serializarea obiectelor JSONAPI simplificate. Foloseste govalidator pentru validarea intrarii.

import github.com/derekdowling/go-json-spec-handler tip Utilizator struct {// valid de la github.com/asaskevich/govalidator ne ofera validare de intrare // cand obiect.Unmarshal () este invocat pe acest tip Sir de nume `json : “nume” valid: “alphanum” `} // exemplu http.HandlerFunc pentru PATCH / users / 1 func PatchUser (w http.ResponseWriter, r * http.Request) {// efectueaza verificari de specificatii impotriva obiectului cerere, eroare: = jsh.ParseObject (r) if err! = nil {// jsh returneaza erori prietenoase API, care sunt usor de raspuns cu jsh.Send (w, r, err) return} // utilizati object.ID pentru a cauta utilizator / face business logic user: = & User {} // unmarshal data into relevant relevant types if govalidator passes, else // returneaza eroarea HTTP 422 pre-formatata pentru a semnifica cum a esuat intrarea err = object.Unmarshal („utilizatori”, utilizator) if err! = nil {jsh.Trimite (w, r, err) return} // modifica-ti obiectul resursa user.Name = “Bob” // reambaleaza si trimite resursa actualizata ca raspuns err = object.Marshal (user) if err! = Nil {jsh.

abuelos calientes cine porno español
insesto tias putas
porno del bueno xxxjovenes
porno español playa comiendo polla
rajas peludas glory hole españa
porno gitanas españolas fontanero cachondo
coños de viejas xxxmamas
peliculas porno subtituladas en español cerdas com gratis
videos de peliculas eroticas videos heroticos
correte dentro hombres corriendose
porno gay trios chicas masturbando a chicos
maduras gozando jovenes nudistas
porno iberico porno gay marruecos
cincuentonas follando megacorridas
videos porno maduras españa gordas corriendose
videos travestis en español porno incesto real
xxxabuelas porno transexual en español
videos incesto amateur follando real
orgasmos extremos penes gordos
ana marco primer anal madres haciendo pajas a sus hijos

Trimite (w, r, err) return} jsh.Send (w, r, object)}

Motivatia pentru JSH

JSH a fost scris pentru abordarea problemei tratarii Ember-Data intr-un server API preexistent. Respectand filozofia modulelor Go asupra cadrelor, se doreste a fi o scadere a stratului de serializare, concentrandu-se doar pe analizarea, validarea si trimiterea de raspunsuri compatibile JSONAPI.

Caracteristici

Implementat: – Manevreaza atat cererile si raspunsurile JSON bazate pe un singur obiect, cat si pe matrice – Validarea intrarilor cu suport de stare HTTP 422 prin [go-validator] (https://github.com/go-validator/validator) – Validarea cererii clientului cu HTTP 406 Raspunsuri de stare – Linkuri, relatii, campuri meta – Raspunsuri de eroare preambalate, usor de utilizat Generator de erori de serviciu intern – Raspunsuri inteligente cu stari HTTP corecte bazate pe metoda de solicitare si anteturi HTTP – Client HTTP pentru GET, POST, DELETE, PATCH TODO: – [ Verificarea caracterelor rezervate] (http://jsonapi.org/format/upcoming/#document-member-names-reserved-characters) Nu se implementeaza: * Aceste caracteristici nu sunt gestionate deoarece depasesc domeniul de aplicare a acestui modul pentru a realiza. A se vedea [jshapi] (https: // github. com / derekdowling / go-json-spec-handler / tree / master / jsh-api) pentru o solutie API completa care rezolva multe dintre aceste probleme. – Rutare – Sortare – Paginare – Filtrare – ORM

Stabilitate

jsh are un model de document de date de baza stabilizat in cea mai mare parte. In acest moment nu sunt inca pregatit sa declar v1, dar incerc in mod activ sa evit incalcarea API-ului public. Domeniile cele mai susceptibile de a primi imbunatatiri includ relatia, legatura si gestionarea metadatelor. In acest moment, iti pot sugera cu incredere sa folosesti jsh fara a risca o incompatibilitate majora de upgrade in viitor!

jsc – Client cu specificatii JSON

Un client HTTP JSONAPI pentru efectuarea de cereri de server de iesire. Construita deasupra http.Client si jsh:

importati github.com/derekdowling/go-json-spec-handler/client // GET document http: //your.api/users/1, resp, err: = jsc.Fetch (“http: //your.api/ “,” users “,” 1 “) object: = doc.First () user: = & yourUser {} err: = object.Unmarshal (” users “, user)

JSH-API

Daca sunteti in cautarea unui loc bun pentru a incepe cu un nou API, de atunci am creat jshapi care se bazeaza pe Goji 2 si jsh pentru a gestiona structura de rutare necesara JSON API, precum si o serie de alte instrumente pentru testarea si derularea API-urilor pe masura ce va dezvoltati propriile proiecte. JSHAPI este similar in spirit cu acest proiect, deoarece se concentreaza intentionat pe eliminarea placii din proiectele dvs. fara a incerca sa rezolve toate problemele lumii.

Exemple

Exista o multime de exemple grozave in testele in sine, care arata exact cum functioneaza jsh. Godocurile, astfel cum sunt legate mai sus, au in ele si o serie de exemple.