abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 01:00 | Nová verze

    Byla vydána nová verze 24.04.28 s kódovým názvem Time After Time svobodného multiplatformního video editoru Shotcut (Wikipedie) a nová verze 7.24.0 souvisejícího frameworku MLT Multimedia Framework. Nejnovější Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    včera 16:33 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 03:22 | Zajímavý článek

    V aktuálním příspěvku na blogu počítačové hry Factorio (Wikipedie) se vývojář s přezývkou raiguard rozepsal o podpoře Linuxu. Rozebírá problémy a výzvy jako přechod linuxových distribucí z X11 na Wayland, dekorace oken na straně klienta a GNOME, změna velikosti okna ve správci oken Sway, …

    Ladislav Hagara | Komentářů: 0
    včera 00:11 | Nová verze

    Rakudo (Wikipedie), tj. překladač programovacího jazyka Raku (Wikipedie), byl vydán ve verzi #171 (2024.04). Programovací jazyk Raku byl dříve znám pod názvem Perl 6.

    Ladislav Hagara | Komentářů: 6
    27.4. 17:44 | Nová verze

    Společnost Epic Games vydala verzi 5.4 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    26.4. 17:11 | Nová verze

    Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.

    Ladislav Hagara | Komentářů: 12
    26.4. 13:33 | Nová verze

    Vyšlo Pharo 12.0, programovací jazyk a vývojové prostředí s řadou pokročilých vlastností. Krom tradiční nadílky oprav přináší nový systém správy ladících bodů, nový způsob definice tříd, prostor pro objekty, které nemusí procházet GC a mnoho dalšího.

    Pavel Křivánek | Komentářů: 9
    26.4. 04:55 | Zajímavý software

    Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.

    Ladislav Hagara | Komentářů: 45
    25.4. 17:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.

    Ladislav Hagara | Komentářů: 14
    25.4. 14:22 | Komunita

    Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.

    Ladislav Hagara | Komentářů: 3
    KDE Plasma 6
     (75%)
     (8%)
     (2%)
     (15%)
    Celkem 876 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?

    radicz avatar 26.5.2018 21:07 radicz
    Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?
    Přečteno: 2207×
    Zdar, mam python skript, ktery slouzi k autentikaci, jeho vystupy mohou byt dva, a to:

    1) skript vyhodi prompt do terminalu pro zadani autentikacniho kodu, pokud jeste dany user neni autentikovan
    2) pokud je dany user autentikovan, skript nevypise nic

    Mym cilem je premostit tento skript do weboveho xichtu, tedy ze user zada sve udaje, se kteryma se chce autentikovat, na serveru by se mel spustit jiz zminovany python skript, a pokud by vyskocil prompt pro zadani auth kodu, tak i userovi zobrazit nejaky popup pro zadani auth kodu, a ten poslat zpatky do skriptu a dokoncit tak autentikaci.

    Zatim se mi pres websockety povedlo akorat to, ze se auth skript na serveru spusti, pak pomoci pexpect modulu userovi na webu zobrazim jestli je vyzadovana autentikace ci nikoliv (pokud ano tak zobrazim pop up pro vlozeni auth kodu), tady ale bohuzel koncim, protoze nevim jak se vratit zpatky do python funkce ze ktere uz jsem jednou vyskocil.

    Chtel bych se tedy zeptat, jestli je vubec takovato komunikace s pythonim skriptem mozna pres web sockety, a nebo na to jdu uplne ze spatne strany, a existujou mnohem lepsi cesty jak toto vyresit?

    Za pripadne odpovedi dekuji!

    Odpovědi

    26.5.2018 21:43 NN
    Rozbalit Rozbalit vše Re: Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?
    Nemuzes ten autentizacni skript prepsat pro web? Bylo by to daleko cistsi reseni.
    radicz avatar 28.5.2018 22:20 radicz
    Rozbalit Rozbalit vše Re: Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?
    hmm mozna bych mohl nejak sahnout do te knihovny ktera tu autentizaci poskytuje, ale porad mam problem jak se usera zeptat na auth code pokud je potreba
    28.5.2018 14:06 Petr
    Rozbalit Rozbalit vše Re: Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?
    Jak ten skript spouštíš? Nechápu tu cestu. Máš skript, webový prohlížeč, webový server? Skript spouštíš ze serveru který komunikuje s prohlížečem přes websocket? Server je v pythonu, php nebo v čem?
    radicz avatar 28.5.2018 22:19 radicz
    Rozbalit Rozbalit vše Re: Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?
    mam webovy server v pythonu (flask), na stejnem serveru je skript ktery, jak jsi rekl komunikuje s prohlizecem pres websocket
    4.6.2018 15:34 Ja
    Rozbalit Rozbalit vše Re: Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?
    Obávám se, že musíš funkci autentikace volat dvakrát - nejdřív ji zavolat bez vstupu a zjistit podle výsledku, jsi-li přihlášený, či nikoliv. Pokud ano, vrátíš do browseru informaci že je přihlášeno a vše ok. Pokud ne, vrátíš browseru formulář pro zadání auth kódu a čekáš na kód.

    Zhruba takto:
    
    @app.route("/")
    def zacatek():
        result = auth("")
        if result:
           return "Already authenticated!"
        else:
           return """<form action="/auth" methid="POST">zadej auth:<input type="password" name="auth"><input type="submit"></form>"""
    
    @app.route("/auth", methods=["GET"])
    def auth():
        result = auth(request.form["auth"])
        if result:
           return "Good, authenticated!"
        else:
           return "Bad auth!"
    
    
    Je to jen letmý nástřel psaný naslepo, ale princip je asi zřejmý.
    radicz avatar 7.6.2018 16:16 radicz
    Rozbalit Rozbalit vše Re: Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?
    Dnes vyzkousim. On asi bude problem v mem pristupu, chtel jsem to mermomoci napsat, bez refreshe stranky, tedy za pomoci js, tak ze user hned uvidi co se deje, vyskoci mu hned auth input atd. Diky tvemu prikladu vidim, ze kdyz to udelam takhle stavove, tak si usetrim spoustu nervu. Dekuji!
    8.6.2018 08:38 Ja
    Rozbalit Rozbalit vše Re: Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?
    Pochopitelně to můžeš udělat i bez reloadu stránky, když ten "server" z minulého příspěvku předěláš aby vracel odpovědi v jsonu, případně nastavoval http status kódy a javascript pošle ajaxem dotaz na informaci o přihlášení (na tu url "/"), když dostane info že přihlášený není, tak zobrazí formulář a po vyplnění zas ajaxem odešle údaje na "/auth" a podle výsledku informuje uživatele. Prakticky všechno co se dá udělat klasickým odesíláním stránky se dá nahradit sekvencí volání ajaxu (tedy až na volání http z https apod.).
    8.6.2018 08:40 Ja
    Rozbalit Rozbalit vše Re: Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?
    Mimochodem, mám tam chybu - form odesílám metodou POST a /auth mám navěšené na GET - správně by mělo být oboje POST. Jak jsem psal, je to jen letmý nástřel.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.