- Fotók, videók mobillal
- Huawei Watch Fit 3 - zöldalma
- Samsung Galaxy Watch8 - Classic - Ultra 2025
- Garmin Venu X1 - vékony, virtuóz, váltságíjas
- iPhone topik
- OnePlus Nord 2 5G - észak-északkelet
- Android alkalmazások - szoftver kibeszélő topik
- Melyik napszakban merül majd le az iPhone 17 Air?
- Samsung Galaxy Watch6 Classic - tekerd!
- Milyen okostelefont vegyek?
Hirdetés
Köszönjük a sok biztatást, támogatást! Utolsó pillanat a féláras hirdetésfeladásra, előfizetésre!
-
Mobilarena
Új hozzászólás Aktív témák
-
moli.hu
őstag
válasz
moli.hu #7979 üzenetére
Megirtam az elso nodejs kodomat, kerem, aki ert hozza, nezze at, hogy
--biztonsagos? nem csinaltam marhasagot?
--az async jol van irva, nem elozi be valamelyik sor amit nem kene?
--stilusos, igy kell-e kodolni nodejs-t?
--a timeoutok jo helyre vannak irva? (20 process, 10 transfer, 30 egyutt)
--a "httpd stopped" szoveg miert nem jon soha?http_createserver = require("http").createServer;
crypto_randombytes = require("crypto").pseudoRandomBytes;
url_parse = require("url").parse;
child_process_exec = require("child_process").exec;
os_hostname = require("os").hostname;
console.info (new Date().toISOString() + "\thttpd started");
var server = http_createserver (
function (IncomingMessage, ServerResponse) {
crypto_randombytes (16,
function (exception, buffer) {
if (exception) throw exception;
uniqueid = buffer.toString ("hex");
console.info (uniqueid + "\tdate: " + new Date().toISOString());
console.info (uniqueid + "\tremoteaddr: " + IncomingMessage.connection.remoteAddress);
ServerResponse.on ("close",
function () {
console.info (uniqueid + "\taborted");
}
);
ServerResponse.on ("finish",
function () {
console.info (uniqueid + "\tsent");
}
);
var querystring = url_parse(IncomingMessage.url, true).query;
if ("secret" && querystring.auth != "secret") {
ServerResponse.writeHead (404);
ServerResponse.end ();
console.info (uniqueid + "\tnoauth: " + IncomingMessage.url);
} else {
label = uniqueid + "\tgenerated";
if (querystring.hostname) console.info (uniqueid + "\thostname: " + querystring.hostname);
console.time (label);
child_process_exec ("rrd.sh graph '" + (querystring.hostname ? querystring.hostname : "") + "'", { encoding: "binary", maxBuffer: 10000000, timeout: 20000 },
function (error, stdout, stderr) {
console.timeEnd (label);
if (error !== null) {
ServerResponse.writeHead (500);
ServerResponse.end (error + stderr);
console.info (uniqueid + "\tnoexec: " + error.toString().replace (/[\r\n\t]+/gm, " "));
} else {
ServerResponse.setTimeout (10000);
ServerResponse.writeHead (200, { "content-type": "image/png", "content-length": stdout.length, "content-disposition": "inline; filename=\"" + (querystring.hostname ? querystring.hostname : os_hostname ()) + ".png\"" } );
ServerResponse.end (stdout, "binary");
console.info (uniqueid + "\tlength: " + stdout.length);
}
}
);
}
}
);
}
).listen (8000);
server.setTimeout (30000);
server.on ("close",
function () {
console.info (new Date().toISOString() + "\thttpd stopped");
}
);--ha nem irnek az elejere kulon sorba require-t, hanem a require-ket bele irnam a kod kozepebe, akkor az at jelentene, hogy ahanyszor odaer a kod, behuz egy ujabb instance-t a library-bol?
--a http 404 helyett tudok valahogy manualis timeout-ra futtatast csinalni vagy valami olyan valaszt szimulalni, mintha nem lenne ott a szerver?
--ugy olvastam, hogy az encoding binary deprecated, ezert mar bufferrel csinaltam meg a crypto-reszt, de mikor az exec-bol atadom a response-nak, azt a reszt hogy lehet atirni? -
moli.hu
őstag
koszonom a valaszokat! Mivel nagyon tetszett a netcat-es megoldas, lehet engedek, nyitok portot es nodejs-sel oldom meg. igy legalabb lehet csak requestre rajzolni grafikont is. A v0.10 ellenere eleg mature? Egy require('http')-re nem huz be feleslegesen tul sok mindent?
-
moli.hu
őstag
@Karma: igen, miutan kiprobaltam 4 packaget, monitorx, stb, ugy dontottem, jobb lesz, ha feltalalom a kereket. ettol fuggetlenul a muninnal is gond lenne a fenti, hisz nyitnom kene httpd portot.
@Sk8erPeter: megis joval egyszerubb volt egy twitter-klienst felrakni, regisztralni es oathot csinalni, mint az snmp-vel lett volna.
"aztán nagyon sok köze van a Twitterhez"
hat, twitteren allapotjelent a worm-ok tobbsege.
"hogy tanácsot kérsz, hogy aztán pont a javasolt megoldásokat jó nagy ívben elkerüld"
ez azt jelenti, hogy az elso tanacsot kellene implementalnom?
most komolyan kerdezem. tehat az elso tanacsot kellene implementalni?
masreszt a folyamatosan adott akadalyok sarkaljak az embert ujabb varatlan otletekre.
"az elzárkózást a szélesebb látókörű megoldásoktól"
nem zarkoztam el, mindre reagaltam. de nem varhato el, hogy az elso adando otletet implementaljam. nem 5 perc utanajaras utan kerdeztem a forumon, hanem tobb napnyi utan, valoszinu ez szokatlan. -
moli.hu
őstag
ugy erzem, tulbonyolitod. es nem csak a kvantumteleportacioval.
egy hintet adok: a multkori statusz-ertesitos kerdest, amire peldaul az snmp-t es egyeb ugyes otletek jottek, vegul twitterrel oldottam meg, jol mukodik.
nincs it-felelos, az en home-szerverem (a fiataloknak: private cloud
) es a nagymamam gepe tarsalogna.
a meglévő démonok érettségét
mint az openssl erettseget? -
moli.hu
őstag
-
moli.hu
őstag
sracok, otletet szeretnek kerni arra, hogy hogyan lehetne megoldani, hogy a B gep ertesitse az A gepet egy esemenyrol - anelkul, hogy webszervert raknek az A gepre. A project ugyanis joval kisebb annal, mint amennyi bajt okoznek egy teljes webszerver telepitesevel, biztonsagilag. Egyszeru, kis eroforrasigenyu megoldast keresek (ssh, irc), otletek?
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Macbook Air M1 98%-os akksi, makulátlan állapot
- Lenovo T480S Touch (érintő képernyő) Intel Core i5-8350, 16Gb ddr4, 12 hónap garancia, áfás számla
- Lii Audio szélessávú hangsugárzó pár
- Lenovo T495S Touch (érintő képernyő) AMD Ryzen 5 Pro 3500U, 12 hónap garancia, áfás számla
- HP ZBook Studio 15" G8 - i9 / 1TB / 32GB / 4GB NVIDIA
- LG 27CN650N-6A - Felhő Monitor - 1920x1080 FHD - 75Hz 5ms - USB Type-C - Quad Core - BT + WiFi
- HIBÁTLAN iPhone 14 128GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3017, 100% Akkumulátor
- Azonnali készpénzes nVidia RTX 2000 sorozat videokártya felvásárlás személyesen / csomagküldéssel
- Gyors, Precíz, Megbízható TELEFONSZERVIZ, amire számíthatsz! Akár 1 órán belül
- MacBook Pro 16 2021 M1 Pro 32GB 512GB 1 év garancia
Állásajánlatok
Cég: FOTC
Város: Budapest