Kong-lisäosa
Kongin lisäosa tukee neljää ulottuvuutta, suoritusjärjestys on ylhäältä alas, ja on huomioitava, että jos sama lisäosa on konfiguroitu eri mittasuhteisiin, se suoritetaan vain kerran:
- Soveltaa API plus kuluttajamixiä;
- Sovellettu kuluttajiin;
- Sovellettu API:ssa;
- Sovellettu maailmanlaajuisesti;
Lisäksi kaikki lisäosat eivät tue kuluttajien määrittelyä
Lisää toinen API testaukseen Lisää uusi käyttöliittymä:
{ "created_at": 1515055457572, "strip_uri": totta, "ID": "a99919d1-0770-40a1-81a9-e3c31fd9d282", "nimi": "spring-boot-consul-service2", "menetelmät": [ "MENE" ], "http_if_terminated": väärin, "preserve_host": väärin, "upstream_url": "http://spring-boot-consul-service2.service.dc1.consul:17004", "uris": [ "/käyttäjä" ], "upstream_send_timeout": 60000, "upstream_connect_timeout": 60000, "upstream_read_timeout": 60000, "Kokeilut": 5, "https_only": väärin
}
Lisää höyryttimiä
{ "created_at": 1515055993113, "tilauslista": [ 41, 28, 44, 14, 79, 38, 30, 69, 15, 88, 72, 53, 89, 47, 81, 43, 60, 91, 92, 100, 98, 55, 12, 40, 9, 31, 84, 24, 36, 39, 96, 74, 6, 8, 93, 99, 78, 34, 49, 37, 61, 76, 33, 35, 32, 77, 70, 26, 52, 87, 73, 23, 57, 25, 17, 90, 62, 82, 19, 75, 50, 4, 51, 42, 65, 66, 63, 3, 1, 68, 94, 67, 20, 80, 54, 7, 5, 16, 85, 13, 46, 10, 97, 22, 48, 11, 27, 86, 18, 59, 83, 21, 56, 95, 2, 64, 58, 71, 45, 29 ], "id": "6b8bc38a-d449-47bf-8b8c-19b888e282d4", "nimi": "spring-boot-consul-service2.service.dc1.consul", "slots": 100
}
Lisää kohteita
Tagets-tiedot
{ "yhteensä": 3, "data": [ { "created_at": 1515056103599, "ID": "994e7886-3e48-45cb-80AD-3f7918ede007", "upstream_id": "6b8bc38a-d449-47bf-8b8c-19b888e282d4", "kohde": "192.168.0.186:17004", "paino": 15 }, { "created_at": 1515056109570, "ID": "03b477ee-a69d-49ee-9892-276f451c373c", "upstream_id": "6b8bc38a-d449-47bf-8b8c-19b888e282d4", "kohde": "192.168.0.185:17004", "paino": 15 }, { "created_at": 1515056112730, "ID": "8ace8d83-4504-4334-ad04-f0b536963df9", "upstream_id": "6b8bc38a-d449-47bf-8b8c-19b888e282d4", "kohde": "192.168.0.184:17004", "paino": 15 } ]
}
Nykyinen API-lista on seuraava:
{ "yhteensä": 2, "data": [ { "created_at": 1515055457572, "strip_uri": totta, "ID": "a99919d1-0770-40a1-81a9-e3c31fd9d282", "nimi": "spring-boot-consul-service2", "menetelmät": [ "MENE" ], "http_if_terminated": väärin, "https_only": väärin, "upstream_url": "http://spring-boot-consul-service2.service.dc1.consul:17004", "uris": [ "/käyttäjä" ], "preserve_host": väärin, "upstream_connect_timeout": 60000, "upstream_read_timeout": 60000, "upstream_send_timeout": 60000, "Yritykset": 5 }, { "created_at": 1514995615974, "strip_uri": totta, "ID": "B8431831-6A77-434E-AC4A-7E379550714F", "nimi": "spring-boot-consul-service", "menetelmät": [ "MENE" ], "http_if_terminated": väärin, "https_only": väärin, "upstream_url": "http://spring-boot-consul-service.service.dc1.consul:17003", "uris": [ "/palvelu" ], "preserve_host": väärin, "upstream_connect_timeout": 60000, "upstream_read_timeout": 60000, "upstream_send_timeout": 60000, "Yritykset": 5 } ]
}
Pääsyrajapinnat palauttavat seuraavat:
{ "viesti": "ok", "date": { "Pisteet": 42, "nimi": "puu", "id": 1, "ikä": 12, "nowTime": 1515060166929, "info": "/checkUser, isäntä:192.168.0.186, service_id:application-1700417004" }, "koodi": 200
} { "viesti": "ok", "date": { "Pisteet": 505, "nimi": "puu", "id": 1, "ikä": 12, "nowTime": 1515060402392, "info": "/checkUser, isäntä:192.168.0.184, service_id:application-1700317003" }, "koodi": 200
} Lisää Key-Auth-lisäosa
Avaa key-autth-plugin
{ "created_at": 1515066239000, "config": { "key_in_body": väärin, "run_on_preflight": totta, "anonyymi": "", "hide_credentials": väärin, "key_names": [ "apikey" ] }, "ID": "78c519d3-11f7-4cdf-b038-9f17f1a83427", "käytössä": totta, "api_id": "a99919d1-0770-40a1-81a9-e31fd9d282", "nimi": "avain-auth"
} Sitten pääsee rajapintaan tällaisella virheilmoituksella:
Poista key-auth-plugin
Tutustu API-sitomislisäosaan
Lisää nopeusrajoittava lisäosa nopeusrajoituksen
Tulos
{ "created_at": 1515068825000, "config": { "minuutti": 10, "politiikka": "klusteri", "redis_timeout": 2000, "hide_client_headers": väärin, "toinen": 2, "limit_by": "kuluttaja", "redis_port": 6379, "redis_database": 0, "fault_tolerant": totta }, "ID": "482c627f-4041-4320-9b2f-0cc7722b92ea", "nimi": "nopeusrajoitus", "api_id": "a99919d1-0770-40a1-81a9-e31fd9d282", "käytössä": totta
} Kun käyttöliittymä ylittää rajan, vastaanotetaan seuraavat palautukset:
Paluu
{ "message": "API-nopeusraja ylittyy"
} Kuitenkin ongelmia on edelleen, koska viestimuoto on kiinteä, tulostusmuoto ei ole johdonmukainen taustapalvelun kanssa, ja mukautettuja viestimuotoja täytyy tukea.
Kong muuttaa poikkeuspalautusarvoa Esimerkiksi palvelun yhtenäinen viestimuoto on seuraava:
{ "koodi": 200, "viesti": "ok", "data": {xxx}
} Haluamme myös, että Kongin poikkeuspalautus pysyy samassa muodossa kuin yllä. Sitten voimme muokata Kongin lähdekoodia suoraan, mikä on itse asiassa hyvin yksinkertaista.
Aloita lataamalla lähdekoodi
#下载kong插件源码
git-kloonigit@github.com:Kong/kong.git
Etsi muokattava ulostulokoodi
Tulostuskoodi löytyy osoitteesta kong/kong/tools/responses.lua, avaa se muokkausta varten.
Tallenna, sitten käännä
[root@tree81 kong]# luarockit tekevät Kong 0.11.2-0 on nyt asennettu /usr/localiin (lisenssi: MIT) Laukaisu, yritä uudelleen
Päivitä osoite nopeasti useita kertoja peräkkäin:Hyperlinkin kirjautuminen on näkyvissä.Saat virheilmoituksen:
{ "koodi": 429, "msg": "API-nopeusraja ylittyy"
} Valmista, täydellinen :) |