Végül node.js mellett döntöttem, amúgy is meg akarom tanulni, szóval ez egy jó projekt lesz kezdésnek:) És rögtön lenne is egy problémám:
Próbálom a projektet kicsit struktúrálni, jelenleg így néz ki:
server.js
var express = require('express');
var app = express();
var mongoose = require('mongoose');
var passport = require('passport');
var config = require('./config/database'); // get db config file
var User = require('./app/models/user'); // get the mongoose model
var helpers = require('./utils/helpers');
//...
var apiRoutes = express.Router();
var users = require('./routes/users');
apiRoutes.get('/memberinfo', passport.authenticate('jwt', {session: false}), users.memberinfo);
app.use('/api', apiRoutes);
Köszi. Mean.io-t azért nem néztem eddig, mert frontend része nem lesz a projektnek, de ettől függetlenül vannak benne hasznos infók. Most ott tartok példának okáért, hogy emailt szeretnék küldeni nodemailer-el, erre csináltam egy új funckiót, így:
//Init nodemailer
var nodemailer = require('nodemailer');
//Create reusable transporter object using the default SMTP transport
var transporter = nodemailer.createTransport('smtps://email%40gmail.com:[email protected]');
//Setup default email data(for now, just the from address)
var mailDefaultOptions = {
from: '"Node Mailer" <[email protected]>'
};
//Function to send emails, so we don't need to init nodemailer each time
function sendEmail(to,subject,text){
var mailOptions = {
from: mailDefaultOptions.from,
to: to,
subject: subject,
text: text
};
// send mail with defined transport object
transporter.sendMail(mailOptions, function(error, info){
if(error){
return console.log(error);
}
console.log('Message sent: ' + info.response);
});
}
//Add the function to exports
exports.sendEmail = sendEmail;
Majd amikor valamelyik route-ban küldeni akarok egy emailt, akkor:
var mailer = require('../app/utils/mailer');
………….
mailer.sendEmail('[email protected]','teszt tárgy','teszt szöveg');
Ez így működik tök jól, csak érdekelne, hogy ez egy jó megoldás e ilyen és hasonló problémákra. Utoljára szerkesztette: passatgt, 2016.04.12. 06:38:01
Igen, az alapelv jo. Ez a lenyege a CommonJS-nek, hogy ujra felhasznalhato, univerzalis (lehetoseg szerint) modulokat keszits vele majd azokat hasznald fel a projekteid kulonbozo pontjan. Amennyiben ez egyfajta hobby projekt szamodra akkor javaslom, hogy ismerkedj meg az ES6 szabvannyal vagy meg jobb ha a TypeScript-tel, mert az a kozeli jovo (vagy a jelen inkabb).
jelen bizony húztam halasztottam, mert nem éreztem magamhoz közelinek ezeket, de muszáj volt belemenni, szerintem kb onnantól, hogy az angular 2-ről bármilyen infónk van
Remelem hamar de facto szabvannya vallik a TypeScript es vegre eltunik a sok kulonbozo mod a modulok kezelesere (CommonJS, Require JS, AMD), mert ebbe bele lehet orulni.
Így szoktam megtanulni valami újat, hogy egyből az éleset fejlesztem... Majd a végén újraírom amikor már bővült a tudásom, de így menetközben több infót találok mint random tutorialokból.
btw: próbálta valaki a Visual Studio Code -ot? még elég fapados ahogy elnéztem, de IntelliSense eszméletlen hasznos-jó benne, amit mindig is imádtam a visual studiokban. Egy ilyen gyors intellisense kéne phpstormba is (vagy valahogy be lehet állítani, hogy kvázi késleltetés nélkül, azonnal dobja a tippeket? én nem találtam erre lehetőséget)
Én régen megnéztem, de akkor kb egy Atom klónnak tűnt, meg akkor IntelliSense se volt benne (azóta nem tudom van-e). Amúgy biztos van PHP-s visual studio addon. Meg szokásos vim.sexy/ :p
Nálam sajnos van, pedig még ilyen Xmx et meg még valamit állítottam egy (vmoptions?) Fájlban. Mondjuk arra is MerlinW hívta fel a figyelmem, hogy alapból a 32bites verzió indul... Van még valami amivel gyorsíthatnék rajta?
Ti elég sok libraryt/microFrameworkot, stb ismertek. Egy sima 4-5 oldalas portofilo weboldalhoz mit ajánlanátok? (animate.css mindenképp lesz animációkhoz), most skeletonnal próbaltam a design egyszerűbbre faragni, de nem volt valami jó választás. Az egész amúgy ajaxos/pushstates lenne (szóval pár sor jquery lekéri a megadott oldal egy részét és kicseréli a tartalmat). Na meg persze responsive. (Mivel kis oldal most csak 5 oldalnyi html t szerkeszgetek.... de majd mindenkepp php-s backend kéne, megkönnyíti az életemet. Bármilyen kis apróságnak örülnék...^^ ja és értelmes jquery gallery plugint se találtam guglival... az mondjuk lehet a foundationos nézegető lesz. Persze az megint előny ha telefonról menne swipe mozdulattal.
/bootstrap, foundation is nagy lenne. Utoljára szerkesztette: Jim Morrison, 2016.04.17. 00:02:27
~ha valakinek kéne. ahogy elnézem elég ismert, de én még nem ismertem... http://photoswipe.com/ elég fasza galériát lehet vele összedobni, mobilon is frankón működik.
Egy már meglévő weboldalra kellene, hogy betegyek egy automatikus hanglejátszást. Az oldal folyamatosan figyeli, küldött-e valaki formot az adatbázisba és a $num változót növeli ha van új elem. Olyankor, mikor a $num változó nő egyel kellene a hang lejátszás is.
a problémám jelenleg ott van, hogy az oldal amit pastebinen linkeltem, folyamatosan frissül ezért folyamatosan lejátsza a hangot. Nekem csak akkor kellene a lejátszás, mikor nő 1-el a $num
Jelenleg viszont, hogyha nő 1-el a num, akkor elkezdi lejátszani a hangot egymás után és végül már párhuzamosan megy a hang
a világ érdekében én szeretném, ha nem kapnál ehhez segítséget az, hogy egy weboldal hangot játszik le, a youtube-on meg a pornó oldalakon kívül még senkinek nem állt jól, mert idegesítő, értelmetlen, baromság
másfelől én úgy kezdenék debugolni, hogy js konzolból meghívod a hanglejátszó függvényedet - ha 1x játszódik le, akkor ott hibás a kódod, ahol meghívod, tehát az echo részen, ha többször, akkor ott hibás a kódod, ahol lejátszol, tehát az alján a script tag alatt
A leirasbol ugy tunik, hogy ez egy "admin" oldal ahol a hang figyelmezteti az adminisztratort, hogy egy uj urlap kitoltes (ami lehet eppenseggel egy megrendeles) erkezett. Szoval azert ott van letjogosultsaga hang lejatszasanak. Persze sokkal elegansabb lenne kuldenio egy uzenetet notification centerbe (lehetosegekhez merten).
a világ érdekében én szeretném ha leszállnál a magas lóról, nem kell világot megváltani, főleg úgy hogy ezt a hangot egyedül egymagamban én fogom hallani, és teljes mértékben az életem megkönnyítésére használnám
#22302 Az oldal nem az én kezem munkája és nem is én vagyok a karbantartásért felelős. Változtatni a meglévő kódon nem szeretnék, csak hozzáírni. De közben azthiszem megtaláltam a megoldást a problémámra :)
Amúgy notification API tényleg szebb lenne és igazából a hang mellett is bőven elfér. Mi is pont minap próbálgattuk és tök szépen szól, ha valami hosszabb folyamat befejeződik és nem aktív az oldal.
Nem tudjátok mi a neve annak/hogy lehet kikapcsolni azt, hogy ha van egy szöveges input tartalommal, kijelölöm benne a szöveget akkor feljön egy lista amiben ad ajánlásokat? Autocomplete elvileg az ami oldalbetöltéskor kitölti, ez valami suggestion lehet, de nem találok semmit se rá neten (Chrome alatt jön elő).
van ilyen, és ez nem a böngésző beépített cucca, és nem is autocomplete? szóval ez valahogy programozható?
Egy szóval nem írtam, hogy nem a böngésző cucca, de azt hittem ez valami másik új featúra.
Amúgy úgy néz ki az autocomplete="new-password" megoldotta a problémát (csak megszopattam magam, mert krómban f12-ből átírva a html-t nem ment, szerver oldalon átírva már igen).
Tudom már csomó mindent kérdeztem, hogy miket használtok meg mi egyebek, de szerintem ezt még nem:
Milyen rendszeren alatt kódoltok (értem ez alatt windows, valami linux dist, os x) és mik azok az eszközök amiket a leggyakrabban használtok a fejlesztéshez?
Én pl Windows alatt csak felnyomtam a XAMPP-ot, és a parancssoros dolgokhoz (phpunit test, grunt, stb) meg CMDer-t használok. Ezzel kb én ki is lőttem mindent (és ezeket még telepíteni is egyszerű, ami mondjuk nem tűnik annyira egyszerűen pl os x alatt). Bár PHPStormban van grunt fülecske és elméletileg itt gyorsabb lenne minden mint parancssoros felületet használni mondjuk unittest lefuttatásához... de speciel nem mindenhez használok phpstormot (még). Most belőttem egy jó kis El Capitan -t virtuális gépen, de annyira idegen az egész. Tutorialokat nézek mysql telepítésről, de már azt sem találom hova telepíti az OS... ( finder borzasztó elsőre a jól megszokott windowshoz képest ^^ ) Érdekelne ti miket használtok, hogy gyorsan és hatékonyan menjen a munka (+ esetleg második monitor xy programnak, ilyesmi, Ti azért már elég sok tapasztalattal rendelkeztek)
A telepítéskor kiadott legutóbbi Ubuntu LTS van a gépen, ezen egy i3wm, hogy el is férjek rendesen. Melóban van egy régi 4:3-as monitor azon megy az IRC (:D), a fullHD meg ketté van osztva és bal oldalt a böngésző, jobb oldalt meg fut a screen benne általában első fülön a logok, másodikon a vim, a többin meg ami éppen kell vagy ha több komponensen dolgozok amik 2 külön gépen futnak, akkor a jobb oldali rész is ketté van osztva vertikálisan. Általában python/Django megy, aminél az ORM elég magas szinten kezeli az adatbázist, szal elég 1-2 sor konfigot berakni és nagyjából ez le is van tudva (ha sqlite is elég, akkor meg telepíteni se kell semmit, de általában postgres van, mert kb 5 perc felrakni és úgyis az fut majd az éles rendszer alatt).
Linux, Windows vegyesen, Utóbbi egy évben IntelliJ IDE-t használok, ez minden Jetbrains terméket magában foglal. Van benne grunt, gulp, npm manager is, így azokkal sem kell külön foglalkozni. Utoljára szerkesztette: MerlinW, 2016.05.14. 20:19:47
osx obviously ott MAMP van hasonló célokra, a MAMP PRO meg eléggé kenterbe veri a xampot az osx terminál magasan a legfaszább, tehát az adott, nem kell telepítgetni szarokat php/webstorm ugyanúgy van osxre is finder helyett van a Path Finder, az kurvajó replacement, és tényleg ráfér az osxre, sima findert annyira én sem éltem soha
Pl miért olyan jó az os x terminál? amit én használok (cmder, továbbfejlesztett ConEmu) abban kiírja, hogy ha git repóban vagyok (+branch), beállíthatom, hogy mondjuk mindig 3 füllel induljon megadott helyeken (első fül x repo, második fül y repo). Ilyet is tud ? (nekem ez a pár apró fícsör nagyon bejön és hasznos is). MAMP ot és Path Finder lecsekkolom, thx.
Mióta van letsencrypt érdemes azt használni a selfsigned helyett. Illetve szerintem ufw sokkal emberbarátabb, mint az iptables. Ha valakinek van 1 kis szabadideje ezt érdemes lehet megnézni, nekem full noname gépen ami sehova sincs linkelve már kb 1 millió attempt volt.
Én denyhost-ot használom, a beállított próbálkozásmennyiség (nálam 3) után reject-eli az adott ip-t megadott ideig (nálam egy hét). Továbbá e-mail-t is küld a dologról.
Én általában csak átrakom a portot meg letiltom a password logint és a 22-n hagyom amit linkeltem. Bár igazából sose néztem még meg, hogy így próbálkozik-e valaki vagy megtalálja-e az új portot, szétnézek majd a logokban.
Volt valaki felvételizni mostanában a székesfehérvári IBM-nél? Ha igen, akkor dobna az illető egy privátot és mesélne róla? :D
AWS EC2-n felraktam egy Bitnami MEAN Stack-et, működik minden tök jól. Viszont amikor fut a node.js-es szerver, néha ilyeneket látok a logban:
Your server is running on port 8080. GET http://www.google.com/reader/about/ 404 238.043 ms - 47 GET http://www.mafengwo.cn/ 200 8.848 ms - 22 GET http://www.elong.com/ 200 1.594 ms - 22 GET http://www.elong.com/ 200 0.826 ms - 22
Ez mitől lehet? Hogyan tudom megakadályozni(ha egyáltalán meg kell?) Egy saját subdomainen fut(api.valami.com:8080), amit nem publikáltam még sehol és csak házon belül használjuk, így nem tudom hogyan talál rá bármiféle bot is.
Köszi
vagy valami tűzfalba dobd be őket (ez jobb), vagy kódból dobd el a kapcsolatot, pl így: [code]http.createServer(function (req, res)
{
var ip = req.ip || req.connection.remoteAddress || req.socket.remoteAddress || req.connection.socket.remoteAddress;
if (ip === '119.254.118.136') { // ez a mafengwo.cn
res.end();
}
}a google az valami email szolgáltatás, azt nem bántanám
gyakori ez a para, és sok különböző ipről? mert ha nem, a fenti megoldás szerintem jó lehet, ha gyakori, akkor meg le kell védened valamilyen auth-tal az egész rendszert Utoljára szerkesztette: j0nNyKa, 2016.06.17. 15:32:30
Srácok, VPS-t szeretnék bérelni, jelenleg egy debian plusz LAMP lenne rá felrakva, és még nem lenne nagy terhelés így olyat keresek, ahonnan olcsón lehet kis csomaggal kezdeni és elég később bővíteni.
Az adatforgalom szempontjából itthon kell a jó sávszél, külföldre lényegtelen.
Tudtok ajánlani valamit?
Ha nincs belső hálózatra rakva úgyis rátalálnak, legalább ingyen tesztelik :)
Ha esetleg nem akarod kirakni élesre, akkor a legegyszerűbb szerintem, ha beállítod SSH tunnelt és akkor eléred az ottani belső dolgokat a saját gépedről is (socks proxy néven keress rá, putty-ban mókázni kell, parancssorból könnyebb). Illetve vagy beállítod nodejs-nek, hogy külső ip-re ne bindoljon (általában 0.0.0.0/[::] elérhető kívülről, 127.0.0.1 nem) vagy letiltod a tűzfalon a portot.
őőő.... egy AWS EC2-n fut a szerver, ahova már beállítottam a tanúsítványokat, szóval ez a része nem kell, mert most is elérem https-en keresztül. Csak azt akarom megoldani, hogy http-n keresztül ne menjen, vagy legyen átirányítva mondjuk.
ilyesmi[code]http.get('*',function(req,res) {
res.redirect('https://mydomain.com' + req.url)
});nyilván a * helyére írj valami api útvonalat, pl. /api/* Utoljára szerkesztette: j0nNyKa, 2016.07.15. 14:33:26
Erre igazan jo megoldas nem letezik ugyanis az elso keresnel ami http mar a kliens elkuldi a payloadot amit egy man in the middle tamadassal lehallgathanak.
Ami talan a legjobb az a "Strict-Transport-Security" http header amit a modern bongeszok felismernek es ha egyszer mar az oldalt elertek https-en keresztul akkor tobben nem fognak titkositatlan kapcsolaton adatot kuldeni neki meg akkor sem ha a tamado http kezdetu linket juttat az aldozathoz.
Mi a cél? HTTP-re átirányítson vagy ne is szolgáljon ki semmit? Amúgy a HSTS a legjobb megoldás, de az első betöltésnél ott is lehet man in the middle, nem nagyon van rá más. Ha van előtte valami webszerver akkor célszerű ott belőni, nginx-szel pl így:
Jobb topikot nem találtam a kérdésemhez. (Értelemszerűen a Maxthon topik válaszai egyoldalúak lennének.)
A Maxthon böngészővel történő online vásárlás és "internet banking" mennyivel kockázatosabb illetve kockázatosabb-e mint ugyanezek Firefox és Chrome esetén? A Maxthon fő fejlesztői csoportja részben kínai, részben kaliforniai illetőségű és "Cloud Browsing", vagyis sokmindent (pl. a jelszavakat) felhőben tárol... Utoljára szerkesztette: Tetsuo, 2016.07.17. 16:23:27
A protokollok és a szóban forgó oldalak biztonsági eljárásai függetlenek a böngészőtől. A jelszavak kezelése meg rajtad áll. Ha nem mented el őket, nem kerülnek a felhőbe. Tehát semmivel sem kockázatosabb. Internet bank auth és egyéb érzékeny adatot egyébként sem ment értelmes ember felhőbe. Utoljára szerkesztette: MerlinW, 2016.07.18. 08:57:38
Ezt nem tudom, nem használok ilyen böngészőket. Viszont ha egy programban nem nyilvánvaló és egyértelmű, hogy mit küld el online az minden csak nem biztonságos vagy megbízható alkalmazás.
Nem ide tartozik tudom de nem találtam neki külön topikot. Kaptam egy kész kódot amit Perl-ben írtak, hogy tudom használható programmá tenni?
Ha van, valami olyasmi az elején, hogy #!/usr/bin/perl, akkor simán futtathatóvá teszed (chmod +x valami.pl) és futtatod (./valami.pl). Ha nincs, akkor szerintem 'perl valami.pl' paranccsal is mennie kéne. Ha nem Windowsod van, akkor passz, Google segít :)
Notepad++ nem is fog futtatni semmit.. az egy szövegszerkesztő. Tölts le és telepíts Perl-t, majd paranccsorban futtasd a scriptedet. A Perl oldalán van tutorial, dokumentáció, stb.
Sziasztok. Nem tudom mennyire bonyolult a kérésem. Nem értek sajnos semennyire hozzá, de azt szeretném megcsinálni, hogy van mondjuk egy táblázatom legyen mondjuk 6 sor 3 oszlop....mindegyikben szöveg van, és azt szeretném megcsinálni, hogyha az egeret az egyik szöveg fölé viszem, akkor megjelenítsen egy képet, mindenféle klikkelés nélkül..és minden szöveghez más képet szeretnék. Ez megoldható?
Volna ez a kis takolmanyom es az istenert sem tudok rajonni a probelmakra: 1, nem jelenik meg a csuszka erteke, mint az input haromnal 2, az input 4 csuszka mozditasara az input 3 erteket valtoztatja 3, az urlap elkuldesenel az utoljara mozditott csuszka erteket kuldi ki az input 3-ra es 4-re
A kesobbiekben tobb csuszka is lesz majd, szoval olyan megoldast keresek, ami ezek szamatol fuggetlen. Volna vkinek kedve segiteni? Koszonom. Utoljára szerkesztette: Agy Halott, 2016.08.25. 04:30:17
fúha, van fogalmad róla hogy mit csinál a kód? - az alsó 2 inputnak nincs name-je - az egész 100x bonyolultabb mint kéne - htmlben data-rangeslider, jsben data-rangeSlider - element.parentNode.getElementsByTagName('output')[0]; ez a selector mindig ugyanazt választja ki, jóhogy ugyanaz változik - a kód.. hát nevezzük rondának - delim = (i < len) ? '&' : '&'; öööö ez... ez igen - js egyik felében plain js, másik felében jQuery, most akkor melyik? - hasraütésre a js kód kb 8-10 sorból megoldható a jelenlegi 33 helyett