abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
včera 18:11 | Nová verze

Byla vydána verze 2.23.0 distribuovaného systému správy verzí Git. Přispělo 77 vývojářů, z toho 26 nových. Přehled novinek v poznámkách k vydání nebo v příspěvku na blogu GitHubu.

Ladislav Hagara | Komentářů: 0
včera 13:33 | Komunita

Nadace Raspberry Pi na svém blogu informuje o vydání Scratch 3 Desktopu pro Raspbian na Raspberry Pi. Verze 3 výukového vizuálního programovacího jazyka Scratch byla vydána v lednu letošního roku. Offline Scratch Desktop byl ale dosud dostupný pouze pro Windows a macOS.

Ladislav Hagara | Komentářů: 0
15.8. 19:44 | Bezpečnostní upozornění

Byly zveřejněny informace o 8 bezpečnostních chybách v implementacích protokolu HTTP/2. Chyby CVE-2019-9511 až CVE-2019-9518 lze zneužít k odepření služeb (DoS). Přehled softwarových produktů a v nich obsažených chyb v tabulce na stránce CERT/CC.

Ladislav Hagara | Komentářů: 16
15.8. 17:55 | Nová verze

Byla vydána verze 1.37.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

Ladislav Hagara | Komentářů: 86
15.8. 15:11 | Nová verze

Byla vydána nová verze 19.08.0 KDE Aplikací (KDE Applications). Přehled novinek v kompletním seznamu změn a na stránce s dalšími informacemi. Videoukázka nových vlastností na YouTube nebo na PeerTube.

Ladislav Hagara | Komentářů: 5
15.8. 14:44 | Zajímavý projekt

CutiePi je open source tablet postavený na Raspberry Pi, konkrétně na Compute Module. K dispozici by měl být koncem roku. Cena zatím nebyla stanovena. Vývojový tým zjišťuje zájem [Hacker News].

Ladislav Hagara | Komentářů: 8
14.8. 21:33 | Zajímavý článek

Greg Kroah-Hartman v příspěvku na svém blogu popisuje svou práci na linuxovém jádře. Popis prokládá videoukázkami ve formátu asciinema. Dnes používá především poštovního klienta Mutt. V plánu má přejít na poštovního klienta aerc, pokud do něj budou přidány v popisu zmíněné vlastnosti.

Ladislav Hagara | Komentářů: 0
14.8. 21:11 | Nová verze

Bylo oznámeno, že EPEL (Extra Packages for Enterprise Linux) ve verzi 8.0 je připraven k vydání. Vedle x86_64, ppc64le a aarch64 je nově podporována také platforma s390x.

Ladislav Hagara | Komentářů: 0
14.8. 14:00 | Zajímavý projekt

Goldberg Emulator je reimplementace Steam API, aby bylo možné hrát hry ze Steamu bez Steamu. Ačkoliv autor projekt zveřejnil až letos v dubnu, pracovat na něm začal již před rokem a nyní v zápisku shrnuje zkušenost s vývojem, např. jak se musí vypořádávat s latencí her.

Fluttershy, yay! | Komentářů: 3
14.8. 11:33 | Komunita

Apache Software Foundation (ASF) zveřejnila (pdf) výroční zprávu za fiskální rok 2019. V březnu letošního roku nadace oslavila (YouTube) 20 let své existence. Dnes spravuje více než 350 projektů a iniciativ.

Ladislav Hagara | Komentářů: 0
Používáte ještě 32bitový software na PC?
 (20%)
 (15%)
 (17%)
 (42%)
 (6%)
 (30%)
Celkem 419 hlasů
 Komentářů: 35, poslední včera 13:29
Rozcestník

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

radicz avatar 26.5.2018 21:07 radicz | Štěpánkovice
Lze komunikovat s python skriptem pres webove rozhrani resp. websocket?
Přečteno: 2168×
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 | Štěpánkovice
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 | Štěpánkovice
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 | Štěpánkovice
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.