Tuossa toisessa ketjussa onkin jo käsitelty karkausvuosien päättelyä Pythonilla. Nykyaikaisempi tapa on kuitenkin käyttää kyselyihin weppipalvelua.
Siksi voimmekin tehdä backend-palvelun, joka palauttaa kysyttäessä karkausvuodet. Esimerkiksi GET-pyyntö
[palvelin]/karkausvuodet/1901/2000
Palauttaisi JSON-muodossa:
{"vuodesta":"1901","vuoteen":"2000","karkausvuodet":[1904,1908,1912,1916,1920,1924,1928,1932,1936,1940,1944,1948,1952,1956,1960,1964,1968,1972,1976,1980,1984,1988,1992,1996,2000]}
Kunhan tuo saadaan ensin toteutettua, niin voidaan tehdä sille vielä simppeli frontend käyttöliittymäksi.
Karkausvuodet backendistä
17
799
Vastaukset 17
- Anonyymi
Jotkut haluaa aina vaan takaapäin...
- Anonyymi
Noin upeita ideoita ei kannata kertoa julkisesti. Nyt joku toinen voi ehtiä toteuttaa tuon idean ennen sinua ja tulee rikkaaksi kun laittaa kyselyn hinnaksi vaikka 1 € per karkausvuosi.
- Anonyymi
Tai laittaa sille sivulle 100 mainosta niin saa rahaa mainostuloilla...
- Anonyymi00017
Miksi kukaan maksaisi 1 € per karkausvuosi?
Delphillä voisi helposti kirjoittaa DLL:n
function IsLeapYear(const Year:Longword):Boolean; stdcall;
Jos joku tykkää Pythonilla koodata, niin kai Pythonista pystyy kutsumaan DLL:ssä olevaa funktiota?
Windowsissa on valtava määrä usein käytettyjä funktioita esim. näissä:
kernel32.dll, user32.dll, gdi32.dll advapi.dll
Ja käsittääkseni jos ajat Python -ohjelmaa Windowsissa, niin ohjelmasti taatusti kutsuu useitakin funktioita noista.
Ainoa ero on se, että nuo DLL:t on Microsoftin tekemiä, mutta jos teen Delphillä DLL:n niin se on minun tekemä dll.
Kutsutapa on molemmissa sama - stdcall.
Huom: jos joku käyttää GNU -systeemistä peräisin olevia DLL:iä windowsissa niin ne on hyvin usein cdecl eikä stdcall.
Tästä seuraa mm. se, että jos kirjoitat C -koodiin funktion abc, niin DLL:ssä se funktio on oikeasti nimeltään _abc.
Ja JOS koodaat C++:lla: muista exportoida DLL:ään julkiseksi tarkoitetut funktiot näin:
extern "C" {
// Laita funktiomäärittelysi tähän
}
jos ET tee noin - funktioidesi oikeista nimistä ei kukaan ota selvää - ja ne vieläpä vaihtelevat sen mukaan mitä C++ -kääntäjää käytät!
- Anonyymi
Jokunlaista fronttiakin saatu jo aikaiseksi.
https://ibb.co/0GYfS0Z- Anonyymi
Frontin html/js. Minulla on backend virtuaalikoneessa olevalla palvelimella ja siksi host on ip-osoitteella.
https://pastebin.com/2RLF8LnK
Kokeilin ekaa kertaa myös Bootstrappia, jotta sai nappulasta vähän siistimmän. Olen melkoisen aloittelija tuossa html-hommassakin.
- Anonyymi
Pitää yrittää Flaskilla tuota.
- Anonyymi
Olipa helppo, muutaman minuutin homma, vaikka en ole koskaan ennen Flaskia käyttänytkään.
https://pastebin.com/Kv37Cey0
$ curl http://localhost:3334/karkausvuodet/1901/2000
{"vuodesta":"1901","vuoteen":"2000","karkausvuodet":[1904,1908,1912,1916,1920,1924,1928,1932,1936,1940,1944,1948,1952,1956,1960,1964,1968,1972,1976,1980,1984,1988,1992,1996,2000]} - Anonyymi
Anonyymi kirjoitti:
Olipa helppo, muutaman minuutin homma, vaikka en ole koskaan ennen Flaskia käyttänytkään.
https://pastebin.com/Kv37Cey0
$ curl http://localhost:3334/karkausvuodet/1901/2000
{"vuodesta":"1901","vuoteen":"2000","karkausvuodet":[1904,1908,1912,1916,1920,1924,1928,1932,1936,1940,1944,1948,1952,1956,1960,1964,1968,1972,1976,1980,1984,1988,1992,1996,2000]}CORS on hyvä lisätä myös, niin toimii paremmin frontin kanssa.
https://flask-cors.readthedocs.io/en/latest/
Eli importilla flask_cors ja sitten appin jälkeen
cors = CORS(app, resources={r"/*": {"origins": "*"}}) - Anonyymi
Anonyymi kirjoitti:
CORS on hyvä lisätä myös, niin toimii paremmin frontin kanssa.
https://flask-cors.readthedocs.io/en/latest/
Eli importilla flask_cors ja sitten appin jälkeen
cors = CORS(app, resources={r"/*": {"origins": "*"}})Frontti Windowsissa Microsoft Edgellä. Backend on virtuaalikoneessa Ubuntu serverillä pyörivällä Python Flaskilla.
https://ibb.co/Q7WsMQg
- Anonyymi
"Ketjusta on poistettu 1 sääntöjenvastaista viestiä."
Mitähän tästä ketjusta on poistettu ja miksi?- Anonyymi
Se kontitussäie. Sain sen kyllä pelaamaan kolmella kontilla. Eli nginx portinvartijana reverseproxynä jakaa liikennettä frontille ja backille, jotka pyörivät omissa konteissaan.
Docker-composen ymliä en viitsi tähän laittaa, mutta nginx:n conffi on seuraavanlainen:
upstream backend {
server backend:3334;
}
upstream frontend {
server frontend:8081;
}
server {
listen 80;
server_name localhost karkausvuodet.test www.karkausvuodet.test;
location / {
proxy_pass http://frontend;
}
location /karkausvuodet {
proxy_pass http://backend;
}
location ~ /\.ht {
deny all;
}
}
- Anonyymi
Hyvä näin.
- Anonyymi
MISTÄ kumpuaa tämä käsittämätön vimma tehdä kaikesta web -palvelua ????
Jos itse tarvitsen tiedon siitä, mikä on karkausvuosi ja mikä ei, niin palanen paikallista ohjelmakoodia hoitaa tuon tarpeen parhaiten.
Itse en näe mitään järkeä kaiken työntämisessä web -aplvelurajapinnan taakse.
Noh toisaalta, City tekee rahaa (vai tekeekö ENÄÄ - on ainakin tehnyt aiemmin) ihmisten matemaattisella osaamattomuudella ja/tai laiskuudella, ks:
https://www.city.fi/mobiili/painoindeksi/
noh, nyt toisaalta saman cityn toisella sivulla, kerrotaan ihan ilmaiseksi, miten voit itse laskea painoindeksin:
https://www.city.fi/ilmiot/ela ja anna toisten kuolla/1027- Anonyymi00018
Esitetty toteutuskin on amatöörimäinen. Karkausvuoden tunnistaa helposti (ohjelmointikielestä riippuen) yhden rivin yhtälöllä, jossa on modulo 4 ja modulo 100.
Ketjusta on poistettu 1 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 1291354
Stubbin ylimielinen uho vie Suomea sotaan!!?
https://m.youtube.com/watch?v=aQ3c540lm9o Miten voi olla että maamme presidentii toimii näin vastuuttomasti kuten hölöt4581053Miesten suusta kuultua
Olen tässä samaa nyt muutaman kerran kuullut miesten suusta seuraavaa, toki hieman erilaisin sanavalinnoin kerrottuna: "159637Sinkut-palstan suurin valhe
Sinkut-palstan suurin valhe on väite siitä, että naisten olisi helpompaa pariutua kuin miesten. Niin kauan kuin sitä va187564- 43559
Martina Aitolehti täräyttää suorat sanat Immu Fight Nightista: "Menen tietysti voittamaan"
Martina Aitolehti on ehtivä. Nyt hän on mukana Immu Fight Nightissa - ja kehässä vastaan tulee Nanna Karalahti. Miten l68538- 71533
- 39519
- 40517
Haluaisin mies tietää pari juttua
Haluisin mies laittaa sulle viestiä ja kysyä paria asiaa sulta. Mun piti kysyä ne tässä joitakin päiviä sitten irl, mutt20506