𝗗𝗮𝘆 𝟰𝟵 𝗼𝗳 𝗟𝗲𝗮𝗿𝗻𝗶𝗻𝗴 𝗠𝗘𝗥𝗡 𝗦𝘁𝗮𝗰𝗸
ਮੈਂ ਇੱਕ ਫੁੱਲ-ਸਟੈਕ ਇੰਜੀਨੀਅਰ ਬਣਨ ਦੇ ਆਪਣੇ ਸਫ਼ਰ ਦੇ 49ਵੇਂ ਦਿਨ 'ਤੇ ਹਾਂ।
ਕੱਲ੍ਹ ਮੈਂ JavaScript classes ਅਤੇ async file data ਨਾਲ ਕੰਮ ਕੀਤਾ। ਅੱਜ ਮੈਂ backend routing 'ਤੇ ਧਿਆਨ ਕੇਂਦਰਿਤ ਕੀਤਾ। ਮੈਂ dynamic routing ਅਤੇ variable path parameters ਬਾਰੇ ਪੜ੍ਹਾਈ ਕੀਤੀ।
ਜਦੋਂ ਤੁਸੀਂ ਵੱਡੇ ਪਲੇਟਫਾਰਮ ਬਣਾਉਂਦੇ ਹੋ ਤਾਂ static paths ਕੰਮ ਨਹੀਂ ਕਰਦੇ। ਤੁਸੀਂ ਡਾਟਾਬੇਸ ਵਿੱਚ ਹਰ ਉਤਪਾਦ ਜਾਂ ਕਿਰਾਏ ਦੀ ਲਿਸਟਿੰਗ ਲਈ ਇੱਕ ਵੱਖਰਾ ਰੂਟ ਨਹੀਂ ਬਣਾ ਸਕਦੇ। ਇਸ ਨੂੰ scale ਕਰਨਾ ਅਸੰਭਵ ਹੈ।
ਅੱਜ ਮੈਂ ਲਚਕਦਾਰ endpoints ਬਣਾਏ। ਇਹ endpoints URL ਵਿੱਚ ਮੌਜੂਦ ਡਾਟਾ ਦੇ ਅਧਾਰ 'ਤੇ ਅਨੁਕੂਲਿਤ ਹੁੰਦੇ ਹਨ।
Pattern-matching routes ਦੀ ਵਰਤੋਂ ਕਰਨ ਨਾਲ ਸਰਵਰ ਪ੍ਰੋਸੈਸਿੰਗ ਤੇਜ਼ ਅਤੇ ਸਾਫ਼ ਹੋ ਜਾਂਦੀ ਹੈ।
Express ਵਿੱਚ ਇਹ ਇਸ ਤਰ੍ਹਾਂ ਕੰਮ ਕਰਦਾ ਹੈ:
- ਇੱਕ path fragment ਤੋਂ ਪਹਿਲਾਂ ਕੋਲਨ (:) ਲਗਾਓ।
- ਇਹ ਇੰਜਣ ਨੂੰ ਦੱਸਦਾ ਹੈ ਕਿ ਇਹ ਬਲਾਕ ਇੱਕ variable ਹੈ, ਕੋਈ literal string ਨਹੀਂ।
- ਆਪਣੇ ਕੋਡ ਵਿੱਚ ਇਸ ਡਾਟਾ ਤੱਕ ਪਹੁੰਚਣ ਲਈ
req.paramsਦੀ ਵਰਤੋਂ ਕਰੋ।
ਆਪਣੀ storeRouter.js ਫਾਈਲ ਵਿੱਚ, ਮੈਂ ਇਸ ਪੈਟਰਨ ਦੀ ਵਰਤੋਂ ਕੀਤੀ:
storeRouter.get('/home/:homeId', storeController.getHomeDetails);
:homeId ਇੱਕ wildcard ਵਜੋਂ ਕੰਮ ਕਰਦਾ ਹੈ। ਇਹ ਇੱਕ ਹੀ ਰੂਟ ਨੂੰ ਹਜ਼ਾਰਾਂ ਵੱਖ-ਵੱਖ home IDs ਨੂੰ ਸੰਭਾਲਣ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ।
Source: https://dev.to/ali_hamza_589ec7b3eb6688d/day-49-of-learning-mern-stack-2ape