??? ???? ?? HTTP ??? ???? ???? ???? ??????. 2. ?? ??? ???? ?? Express-Validator? ???? ?? ??? ??? ???? ??????. 3. ?? ?? ??? ???? BCRYPT ? Passport.js? ?? ??? ??? ?????? ???? ?? ??? ??????. 4. ?? ? ?? ???? ???? ?? ?? ?? ? ??? ?????. 5. NPM ?? ?? Snyk? ?? ??? ???? ???? ????? ?????? ??? ???? ?????. 6. ???? HTTPS? ???? ?? ?? ???? ??????. 7. ?? ???? ??? ??? ??? ? ??? ???? ??? ???? ?????. ?? DOTENV? ???? ?? ??? ??? ???? ?? ??? ?? ???? ????. ??? ??? ?? ?? Node.js Express ??????? ?? ??? ?? ??? ?????.
Node.js Express ?? ????? ???? ?? ?? ??? ????. ?????. ?? API ?? ? ?? ? ?? ???? ?? ??? ??? ??? ??, ?? ?? ?? ?? ?? ???? ??? ? ????. ??? ????? ??? ??? ??? ????.

1. ??? ???? HTTP ??? ??????
?? ?? ?? ? ??? ?? ????? ???? ????. ?? HTTP ??? ???? XSS, ?? ?? ? MIME ?? ???? ?? ???? ??????? ?? ?????.
?? :

NPM ?? ??
?? :
const express = ?? ?? ( 'Express'); const helmet = require ( '??'); const app = express (); app.use (helmet ());
? ?? ??? ??? ?? ??? ?????.

-
X-Content-Type-Options: nosniff
-
X-Frame-Options: DENY
-
X-XSS-Protection: 1; mode=block
-
Strict-Transport-Security
(HTTPS? ???? ??)
??? ?? ??? ??? ?? ? ?? ??? ???? ???? ???? ?????.
2. ??? ???? ?????
??? ??? ???? ????. ?? ????? ?? ?? ??, ?? ?? URL ????? ?? ?? ??? ? ????.
Express-Validator? ???? ???? ???? ??????.
????:
NPM Express-Validator? ??????
?:
const {body, validationResult} = ?? ( 'Express-Validator'); app.post ( '/user', body ( 'email'). iseMail (). ??? ?? (), ?? ( '????'). Islength ({min : 6}), (req, res) => { const errors = validationResult (req); if (! errors.isempty ()) { return res.status (400) .json ({errors : errors.array ()}); } // ??? ???? ????? } );
??? ???? ?? ??? ?? ??? ??? ?????.
Pro Tip : ?? ??? (? : ?? ????, ?? HTML)? ???? ??? ??, ?? ? ??? ??????.
3. ?? ?? ? ??
?? ???? ???? ?? ??? ?????.
- bcrypt ?? scrypt to ?? ??? ?????? .
- ??? ?? ??? ?? ?? ???? . Passport.js , Auth0 ?? Firebase Auth ? ?? ?? ??? ?????? ??????.
- ?? ?? ?? ?? :
-
secure: true
(?? https ?) -
httpOnly: true
(?? ????? ? JS ???) - CSRF? ???? ??
sameSite: 'strict'
??'lax'
? ??????
-
express-session
? ? :
app.use ({{ ?? : process.env.session_secret, RESAVE : False, SaveUnInitialized : False, ?? : { ?? : process.env.node_env === 'production', // https ? prod??? httponly : ??, Samesite : 'Strict', ?? : 24 * 60 * 60 * 1000 // 1 ? } });
?? ?? ??? ?? ?? ?? ??? ???? JWT? ???? ?? ????.
4. ???? ??? ?????
?? ??
?? ???? ??? ?? ? DDOS ??? ??????.
Express-Rate-Limit ?? :
NPM ?? Express-Rate-Limit
const ratelimit = ?? ?? ( 'Express-Rate-Limit'); const limiter = ratelimit ({ Windowms : 15 * 60 * 1000, // 15 ? MAX : 100 // ? ? ? IP? 100 ???? ?????. }); app.use (???);
? ?? ?? ?? ?? (? : ???)? ??????.
CORS : ???? ???? ????
? ???? ??? ?????.
app.use (cors ()); // ?? ??? ?????
??, ??? ?? ??? ? ?????? :
app.use (cors ({ ??? : [ 'https://yourapp.com', 'https://admin.yourapp.com'], ?? ?? : ?? });
5. ???? ????????
Node.js ?? ??? ?? ???? ?????. ?? ?????? ??? ( node-serialize
, serialize-javascript
)? ??? ? ????.
-
npm audit
????? ??????. - Snyk ?? Dependabot ? ?? ??? ???? ???? ? ?? ?? ???.
-
package-lock.json
?? ??? ??? ??? ??? ??? ??^
?????.
??? ?? ?????? :
NPM ?? NPM ?? ??
6. ???? HTTPS? ??????
?? HTTPS? ?? ??????. HTTP? ???? ??? ??? ??????? ??? ?????.
- ?? SSL CERT? ?? CertBot ? ????? .
- ?? SSL ??? ???? Nginx ?? CloudFlare ? ?? ?? ???? ??????.
Express??? https? ?? ? ? ????.
app.use ((req, res, next) => { if (req.header ( 'x-forwarded-proto')! == 'https'&& process.env.node_env === 'production') { res.redirect (`https : // $ {req.header ( 'host')} $ {req.url}`); } ? ?? { ??(); } });
?? : ???
x-forwarded-proto
???? ??? ???? ? ?????.
7. ??? ???? ??????
?? ?? ?? ?? ??? ????? ????? ????.
??:
res.status (500) .send (err); // reaks info
??:
Console.error (err); // ???? ?????? res.status (500) .send ( '?? ????');
??? ? ?? (? : Winston ?? Pino )? ???? ?????? ?? ?? ???? ??? ????.
??? : ?? ?? ? ??
- ?? ??? ?? (DB ????, API ?, JWT ??)? ??????.
- ???
.env
??? ?????? (.gitignore
? ??). - ?? ???
.env
???? ????.
dotenv ?? :
?? ( 'dotenv'). config (); const dbpassword = process.env.db_password;
???? ??? ??? (Heroku, AWS ?)? ?? ENV VAR? ??????.
Express ?? ???? ?? ??? ????? ??? ??? ???? ???? ??? ?? ? ????. ??, ?? ??? ?? ? ?? ?? (?? ??, HTTP ? ??? ??? ??????. ??? ??? ??? ??? ?????.
? ??? Node.js Express ?? ????? ???? ??? ?? ?????. ??? ??? PHP ??? ????? ?? ?? ??? ?????!

? AI ??

Undress AI Tool
??? ???? ??

Undresser.AI Undress
???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover
???? ?? ???? ??? AI ?????.

Stock Market GPT
? ??? ??? ?? AI ?? ?? ??

?? ??

??? ??

???++7.3.1
???? ?? ?? ?? ???

SublimeText3 ??? ??
??? ??, ???? ?? ????.

???? 13.0.1 ???
??? PHP ?? ?? ??

???? CS6
??? ? ?? ??

SublimeText3 Mac ??
? ??? ?? ?? ?????(SublimeText3)

? ??? JavaScript? ???? ???? ???? ??? ?? ??? ?????. ?? ????? HTML5? ???-* ??? ???? ?? ??? ??? ???? JavaScript? ?? ?? ???? ?? SRC ??? ???? ???? ??? ??? ???? ????. ? ??? ????? ???? ??? ??? ???? ????? ? ????? ??? ?? ?? ? ??? ?????.

?? ????? geolocationapi? ????? ??????. ???? ?? GetCurrentPosition ()? ???? ???? ?? ?? ??? ?? ???? ??? ?? ?? ? ?? ?? ?????. ??? ?? ??, ??? ?? ??? ?? ?? ??? ?? ?? ?? ?? ??? ??????. ?? ?? ??? ???? ?? ???? ????? ?? ?? ?? ? ?? ??? ??? ??? ?? ????. ?? ?????? ??? ?? ? ?? ?? ??? ?????.

Nuxt3? ?? API ?? ???? ??? ?????. 1. DefinePagemeta? ??, ???? ? ????? ?? ??? ?? ??? ???? ? ?????. ?? ?? ?????? ??? ???? ?? ? ? ????. 2. ASSHEAD? ??? ?? ??? ???? ?? ? ?? ? ????? ???? SEO ???? ???? ?? DefinePagemeta? ???????. 3. USEASYNCDATA? ??? ???? ???? ?? ?? ? ?? ??? ???? ???? ?? ? ????? ??? ?? ??? ???? ? ?????. 4. UseFetch? USEASYNCDATA ? $ FETCH? ????, ?? ?? ???? ???? ?? ??? ?????.

JavaScript?? ?? ??? ???? SetInterVal () ??? ??????, ?? ??? ?? ? ???? ?? ?? ?? ??? ????? ?????. ?? ??, setInterVal (() => {console.log ( "2 ??? ??");}, 2000)? ClearInterval (IntervalId)? ?? ??? ??? 2 ??? ???? ?????. ?? ???????? ??, ?? ?? ?? ?? ?????? ? ??? ? ??? ?? ?? ??? ?? ?? ??? ?????? ???? ? ?? ??? ??? ?? ????? ?? ??? ??????. ?? ?? ??? ????? ???? ??? ???? ??????

Clipboardapi? WriteText ???? ???? ?? ??? ???? ??????. ?? ???? ? ??? ?? ???? ??????? ?? ????? ???? ?? ??? ExeccCommand? ?? ???? ? ? ????.

theBestatorReateAmulti-linestringInjavaScriptSingStisingStisingTemPlatalswithBackTicks, PRESERVEREAKENXACTLYASWRITENTINGSINGISINGSTINGISINGSTISIGINGSTISIGINSTEMPLATALSWITHTING.

aniife (?? invokedfunctionexpression) isafunctrunsassoonasitis inistlisped, createBywrappingAfunctionInparenthessandmmediestInvokingit, whatepreventSglobalNamesPacePollutionAndenablesPrivatesCopethroughtroscore; itisWrettenas (function () {/cod

JSON ???? JavaScript ??? ?? ????? JSON.PARSE () ???? ???????.? ???? ??? JSON ???? ?? JavaScript ??? ?? ? ? ??? ?? ? ?? ? ??? ?? ????? ??? JSON? ??? ?????. ??? ??? ??????? ... ??? ????? ??? ???????. ??? ?? ???? ?? ??? ???? ???? ??? ??? ??? ??? ???? ? ? ?? ?? ??? ?? ??? ?? ?? ?? ? ?? ?? ? ? ????.
