Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 3045|Odpoveď: 0

[Zdroj] .NET/C# používa Refit na požiadanie o chybu typu enum parametra

[Kopírovať odkaz]
Zverejnené 23. 7. 2023 15:13:05 | | | |
Požiadavky: Ak je v parametri typ enum, rozhranie vráti chybu "400 Bad Request", pretože Refit štandardne konvertuje enum v objekte na reťazec a rozhranie nemôže previesť reťazec na enum chybu, a to nasledovne:

{
    "typ": "https://tools.ietf.org/html/rfc7231#section-6.5.1",
    "title": "Vyskytla sa jedna alebo viac validačných chýb.",
    "stav": 400,
    "traceId": "00-3aef79a91ce9c41883953c9aaccb48a-68917b547ba8a2e5-00",
    "chyby": {
        "req": [
            "Požadované pole je povinné."
        ],
        "$.languagePermissions": [
            "Hodnota JSON sa nepodarilo previesť na LanguagePermissionsEnum. Cesta: $.languagePermissions | LineNumber: 0 | BytePositionInLine: 145."
        ]
    }
}



Oficiálne vysvetlenie je, že dôvodom na predvolenú konverziu enumov na reťazce je to, žeZvýšiť čitateľnosť a uľahčiť čítanie informácií o obsahu parametrov。 Referencia:Prihlásenie na hypertextový odkaz je viditeľné.

Predvolené správanie je serializovať enum na reťazec, čo môžete zmeniť tým, že serializátoru poskytnete vlastné nastavenia:Prihlásenie na hypertextový odkaz je viditeľné.



Takže posielame vlastné nastavenia Refitu a nepoužívame predvolené nastavenia, vymažemeJsonStringEnumConverterPrevodník je v poriadku, kód je nasledovný:

Riešenie:Prihlásenie na hypertextový odkaz je viditeľné.
(Koniec)




Predchádzajúci:.NET/C# ľahký rámec pre mapovanie objektov v Mapstere
Budúci:.NET/C# Jednoduché použitie Polly tutoriál
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com