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

Pohľad: 32735|Odpoveď: 3

[ASP.NET] ASP.NET Core view používa Blazorov image captcha

[Kopírovať odkaz]
Zverejnené 7. 4. 2020 11:15:36 | | | |
Blazor je framework na tvorbu interaktívnych webových používateľských rozhraní pre klientov pomocou .NET:
  • Použite C# namiesto JavaScriptu na vytvorenie bohatého, interaktívneho používateľského rozhrania.
  • Zdieľajte logiku aplikácií na serverovej a klientskej strane napísanú v .NET.
  • Renderujte používateľské rozhranie ako HTML a CSS na podporu viacerých prehliadačov, vrátane mobilných prehliadačov.


Blazor je webový framework navrhnutý na spúšťanie na strane klienta v prehliadači na webAssembly-založenom .NET runtime (Blazor WebAssembly) alebo na serverovej strane v ASP.NET Core (Blazor server). Pre akýkoľvek spravovaný model sú modely aplikácií a komponentov rovnaké.

Blazor servery

Použite model hostingu Blazor servera na spúšťanie aplikácií na serveri z ASP.NET Core aplikácií.Aktualizácie používateľského rozhrania, spracovanie udalostí a JavaScriptové volania prebiehajú prostredníctvomSignalRSpojenia s procesom



Model hostingu servera Blazor ponúka nasledujúce výhody:

  • Veľkosť sťahovania je výrazne menšia ako v aplikácii Blazor WebAssembly a aplikácia sa načítava oveľa rýchlejšie.
  • Aplikácie môžu plne využiť možnosti servera, vrátane použitia akýchkoľvek API kompatibilných s .NET Core.
  • Na serveri sa používa .NET Core na spustenie aplikácie, takže existujúce .NET nástroje ako ladenie fungujú podľa očakávaní.
  • Podporované sú tenké klienty. Napríklad aplikácia Blazor server je vhodná pre prehliadače, ktoré nepodporujú WebAssembly, a pre zariadenia s obmedzenými zdrojmi.
  • .NET/C# kódová základňa aplikácie, ktorá obsahuje komponentný kód aplikácie, na klientovi nefunguje.


Blazor server hosting má nasledujúce nevýhody:

Latencia je zvyčajne vyššia. Každá interakcia používateľa zahŕňa sieťový skok.
Offline práca nie je podporovaná. Ak klientské pripojenie zlyhá, aplikácia prestane fungovať.
Ak máte viacerých používateľov, existujú výzvy v škálovateľnosti aplikácií. Server musí spravovať viacero klientskych pripojení a spravovať stav klienta.
ASP.NET Core servery sú potrebné na obsluhu aplikácie. Scenáre nasadzovania bez servera nie sú uskutočniteľné (napr. poskytovanie aplikácií cez CDN).

Úvod tutoriálu:

1. Najprv vytvorte nový projekt aplikácie Blazor pomocou vs2019, ako je uvedené nižšie:



2. Vytvoriť novú komponentu Razor s nasledujúcim kódom:

Potrebujeme balík SkiaSharp na vygenerovanie base64 captcha a jeho inštaláciu cez nuget:

3. Začnite projekt, navštívte:Prihlásenie na hypertextový odkaz je viditeľné.

Generovaný html kód vyzerá takto:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8" />
    <meta meno="viewport" obsah="šírka=šírka zariadenia, počiatočná mierka=1.0" />
    <title>BlazorApp1</title>
    <base href="/" />
    <link rel="stylesheet" href="css/bootstrap/bootstrap.min.css" />
    <link href="css/site.css" rel="stylesheet" />
</head>
<body>
    <app>
        <!--Blazor:{"sequence":0,"type":"server","prerenderId":"19210eabb9054fe79ea7cc3e6f501df5","descriptor": "CfDJ8G8mpuBWCflCst2FMatPfBxQE\u002Br1dzwAAKPTr0QFhEikdvN38F\u002BP7DcVOKo\u002BPF9p1ZAgdir\u002BYdhFqRpzbwsqEap4xG3gpcMVtLX2yGCGhOnh596O6KcFICrjAZGk82Q2lVu\ u002B94jRo6qJ9JgxrjzuAOxLvrXBlFoGwTssxsHOI2qoQHGwlv\u002BA\u002BGsyaTjfxZ8DAgqAuiwaHynCg0J18d/VUh8brr9FrMe91kKCVw0OLUVRjCXK0FXGvXPYKjEIuE9FY5w3EvO17tJJ/ 9LpOKmqEeYpk6FlOPeuviBB1LhHBrzycchpZAb8eNGY51tN5Gjcqf/uNOMHZYLXoxjj6bmug/62JJvaQ62OrFNqIJw6S730"}-->
        <div class="sidebar">
    <div class="horný rad pl-4 navbar navbar-dark">
    <a class="navbar-brand" href>BlazorApp1</a>
    <tlačidlová trieda="navbar-toggler">
        <span class="navbar-toggler-icon"></span>
    </button>
</div>

<div class="kolaps">
    <ul class="nav flex-column">
        <li trieda="nav-položka px-3">
            <a href="" class="nav-link">
                <span class="oi oi-home" aria-hidden="true"></span> Home
            </a>
        </li>
        <li trieda="nav-položka px-3">
            <a href="counter" class="nav-link">
                <span class="oi oi-plus" aria-hidden="true"></span> Counter
            </a>
        </li>
        <li trieda="nav-položka px-3">
            <a href="fetchdata" class="nav-link">
                <span class="oi oi-list-rich" aria-hidden="true"></span> Fetch data
            </a>
        </li>
    </ul>
</div>
</div>

<div class="hlavná">
    <div class="horný riadok px-4">
        <a href="https://docs.microsoft.com/aspnet/" target="_blank">O</a> nás
    </div>

    <div class="obsah px-4">
        <h3>Overenie</h3>


<p>
    (Blazor) Ukážka, ako ukázať overovací kód a overiť ho.
</p>

<img style="border:solid 1px #ccc" src="data:image/jpeg;base64,...." />
<button>Obnova</button>
<hr>
<div>Zadajte číslo na obrázku</div>
<form>
    <input type="text" style="padding:5px" />
    <button>Skontrolované</button>
</form>
<hr>
<button>TestClick</button>
    </div>
</div>
    <!--Blazor:{"prerenderId":"19210eabb9054fe79ea7cc3e6f501df5"}-->
    </app>

    <div id="blazor-error-ui">
            Došlo k nespracovanej výnimke. Podrobnosti nájdete v prehliadačových vývojárskych nástrojoch.
        
        <a href="" class="reload">Reload</a>
    </div>

    <script src="_framework/blazor.server.js"></script>
</body>
</html>


Skúste kliknúť na tlačidlo, spúšťač udalostí je komunikovaný cez SignalR, ktorý je založený na websockete, pollingu a podobne, ako je znázornené na obrázku nižšie:


Referenčné odkazy:

Prihlásenie na hypertextový odkaz je viditeľné.





Predchádzajúci:Problém s dekompilovanými XAML súbormi
Budúci:Discuz(DZ) je nezrozumiteľné riešenie pre dobíjanie turistických bodov XML
 Prenajímateľ| Zverejnené 7. 4. 2020 11:45:47 |
Znamená to trochu obojstranného viazania


Zverejnené 15. 11. 2022 10:51:42 |
To však neznamená, že táto stránka súhlasí s jej názormi a je zodpovedná za jej autenticitu
 Prenajímateľ| Zverejnené 12. 10. 2023 20:02:48 |
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