See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 12431|Vastuse: 0

Microservices Gateway Kong kasutab pistikprogramme veatagastuste kohandamiseks

[Kopeeri link]
Postitatud 14.02.2019 16:58:19 | | |
Kong plugin

Kongi plugin toetab nelja dimensiooni, täitmise järjekord on ülevalt alla ning tuleb märkida, et kui sama plugin on konfigureeritud erinevates mõõtmetes, käivitatakse see ainult üks kord:

  • Rakenda API ja tarbijate segu;
  • Rakendatud tarbijatele;
  • Rakendatud API-s;
  • Rakendatud globaalselt;

Samuti ei toeta kõik pluginad tarbijate määratlemist

Lisa veel üks API testimiseks
Lisa uus liides:


{
    "created_at": 1515055457572,
    "strip_uri": tõsi,
    "ID": "a99919d1-0770-40a1-81a9-e31fd9d282",
    "nimi": "spring-boot-consul-service2",
    "meetodid": [
        "SAA"
    ],
    "http_if_terminated": vale,
    "preserve_host": vale,
    "upstream_url": "http://spring-boot-consul-service2.service.dc1.consul:17004",
    "uris": [
        "/kasutaja"
    ],
    "upstream_send_timeout": 60000,
    "upstream_connect_timeout": 60000,
    "upstream_read_timeout": 60000,
    "Katsed": 5,
    "https_only": vale
}


Lisa aurud


{
    "created_at": 1515055993113,
    "tellimuste nimekiri": [
        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",
    "Slotid": 100
}


Lisa sihtmärgid



Tagets'i info

{
    "kokku": 3,
    "andmed": [
        {
            "created_at": 1515056103599,
            "ID": "994e7886-3e48-45cb-80AD-3f7918ede007",
            "upstream_id": "6b8bc38a-d449-47bf-8b8c-19b888e282d4",
            "sihtmärk": "192.168.0.186:17004",
            "kaal": 15
        },
        {
            "created_at": 1515056109570,
            "ID": "03B477ee-A69D-49ee-9892-276F451C373C",
            "upstream_id": "6b8bc38a-d449-47bf-8b8c-19b888e282d4",
            "sihtmärk": "192.168.0.185:17004",
            "kaal": 15
        },
        {
            "created_at": 1515056112730,
            "id": "8ace8d83-4504-4334-ad04-f0b536963df9",
            "upstream_id": "6b8bc38a-d449-47bf-8b8c-19b888e282d4",
            "sihtmärk": "192.168.0.184:17004",
            "kaal": 15
        }
    ]
}


Praegune API-de nimekiri on järgmine:

{
    "kokku": 2,
    "andmed": [
        {
            "created_at": 1515055457572,
            "strip_uri": tõsi,
            "ID": "a99919d1-0770-40a1-81a9-e31fd9d282",
            "nimi": "spring-boot-consul-service2",
            "meetodid": [
                "SAA"
            ],
            "http_if_terminated": vale,
            "https_only": vale,
            "upstream_url": "http://spring-boot-consul-service2.service.dc1.consul:17004",
            "uris": [
                "/kasutaja"
            ],
            "preserve_host": vale,
            "upstream_connect_timeout": 60000,
            "upstream_read_timeout": 60000,
            "upstream_send_timeout": 60000,
            "Kordused": 5
        },
        {
            "created_at": 1514995615974,
            "strip_uri": tõsi,
            "ID": "B8431831-6A77-434E-AC4A-7E379550714F",
            "nimi": "spring-boot-consul-service",
            "meetodid": [
                "SAA"
            ],
            "http_if_terminated": vale,
            "https_only": vale,
            "upstream_url": "http://spring-boot-consul-service.service.dc1.consul:17003",
            "uris": [
                "/service"
            ],
            "preserve_host": vale,
            "upstream_connect_timeout": 60000,
            "upstream_read_timeout": 60000,
            "upstream_send_timeout": 60000,
            "Kordused": 5
        }
    ]
}


Ligipääsuliidesed tagastavad järgmised andmed:

{
    "MSG": "Okei",
    "date": {
        "skoor": 42,
        "nimi": "puu",
        "id": 1,
        "vanus": 12,
        "nowTime": 1515060166929,
        "info": "/checkUser, host:192.168.0.186, service_id:application-1700417004"
    },
    "kood": 200
}
{
    "MSG": "Okei",
    "date": {
        "skoor": 505,
        "nimi": "puu",
        "id": 1,
        "vanus": 12,
        "nowTime": 1515060402392,
        "info": "/checkUser, host:192.168.0.184, service_id:application-1700317003"
    },
    "kood": 200
}

Lisa Key-Auth plugin

Ava key-autentimise plugin


{
        "created_at": 1515066239000,
        "config": {
                "key_in_body": vale,
                "run_on_preflight": tõsi,
                "anonüümne": "",
                "hide_credentials": vale,
                "key_names": [
                        "apikey"
                ]
        },
        "ID": "78c519d3-11f7-4cdf-b038-9f17f1a83427",
        "lubatud": tõeline,
        "api_id": "a99919d1-0770-40a1-81a9-e31fd9d282",
        "nimi": "key-auth"
}

Seejärel pääse liidesele sellise veaga ligi:

SAADAHüperlingi sisselogimine on nähtav.
#输出
{
    "message": "Päringus ei leitud API võtit"
}

Eemalda key-autentimise plugin



Vaata API sidumise pluginat

SAADAHüperlingi sisselogimine on nähtav.
# Väljund:
{
    "kokku": 0,
    "andmed": []
}

Lisa kiiruse piiramise plugina kiirusepiirang


Väljund

{
    "created_at": 1515068825000,
    "config": {
        "minut": 10,
        "poliitika": "klaster",
        "redis_timeout": 2000,
        "hide_client_headers": vale,
        "teine": 2,
        "limit_by": "tarbija",
        "redis_port": 6379,
        "redis_database": 0,
        "fault_tolerant": tõsi
    },
    "ID": "482c627f-4041-4320-9b2f-0cc7722b92ea",
    "nimi": "kiiruse piiramine",
    "api_id": "a99919d1-0770-40a1-81a9-e31fd9d282",
    "lubatud": tõene
}

Kui ligipääsuliides ületab piiri, saadakse järgmised tagastused:


Tagasitulek

{
    "message": "API kiiruse piirang ületatud"
}

Siiski esineb mõningaid probleeme, sest sõnumi formaat on fikseeritud, väljundvorming ei ole kooskõlas tagateenuse teenusega ning tuleb toetada kohandatud sõnumivorminguid.

Kong muudab erandite tagastuse väärtust
Näiteks teenuse ühtse sõnumi formaat on järgmine:

{
    "kood": 200,
    "MSG": "Okei",
        "data": {xxx}
}

Soovime ka, et Kongi erandi tagasitulek jääks samasse formaadisse nagu eelpool. Seejärel saame otse muuta Kongi lähtekoodi, mis on tegelikult väga lihtne.

Alusta lähtekoodi allalaadimisest

#下载kong插件源码

git kloongit@github.com:Kong/kong.git

Leia väljundkood, mida muuta

Väljundkood asub lehel kong/kong/tools/responses.lua, ava see redigeerimiseks.



Salvesta, siis kompileeri

[root@tree81 kong]# luarockid teevad
Kong 0.11.2-0 on nüüd paigaldatud /usr/local (litsents: MIT)

Käivita, proovi uuesti

Värskenda aadressi kiiresti mitu korda järjest:Hüperlingi sisselogimine on nähtav.Sain veateade:

{
    "kood": 429,
    "msg": "API kiiruse piirang ületatud"
}

Valmis, täiuslik :)




Eelmine:jQuery laadib teksti AJAX-i kaudu
Järgmine:init: function () jquery对象的构造函数
Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com