اذهب إلى المحتوى

Bassel Jhr

الأعضاء
  • المساهمات

    35
  • تاريخ الانضمام

  • تاريخ آخر زيارة

كل منشورات العضو Bassel Jhr

  1. لقد لاحظت وجود كل من app.render و res.render في node.js ولكن في التوثيق الرسمي التفاصيل لكل منهما متشابهة، وكل منها يستدعي callback. ما هو الفرق الأساسي بينهما وماهي الحالات التي يجب فيها استخدام كل واحدة؟
  2. أقوم باستخدام إطار العمل express في node.js، وأرغب بإجراء بعض الأوامر في حال كانت الطلبات قادمة من خلال AJAX فقط. فكيف يمكنني تمييز الطلبات التي يتم إرسالها باستخدام AJAX من طرف المستخدم إلى الخادم؟ حاولت استخدام الغرض req الموجود ضمن إطار العمل express ولكن لم أجد فرق بين كل من النوعين
  3. لدي مساري توجيه ضمن إطار العمل express متشابهين: /posts/:slug/ /articles/:slug/ وقمت بتكرار نفس الكود إلى كل مسار: app.get('/posts/:slug', samecode) app.get('/articles/:slug', samecode) ولكن أرغب بدمج هذه المسارات بحيث يتم تنفيذ نفس الكود عند الوصول إلى أي منهما: app.get('/[posts|articles]/:slug', function(req, res, next) { .... }) فكيف يمكنني تحقيق ذلك بدلاً من تكرار الشيفرة البرمجية لكل مسار؟
  4. باستخدام إطار العمل express في node.js قمت بوضع بعض التعليمات بعد التابع res.send كالتالي: res.send(200, somedata); console.log('hello world!'); ومع ذلك تم تنفيذها، فكما قرأت بالتوثيق الرسمي بأن التابع res.send لا يقوم بعملية إعادة return والخروج من التابع الأساسي وإنما فقط يقوم بإغلاق اتصال http مع طرف المستخدم. ولكن لماذا يتم تنفيذ بقية العمليات حتى بعد إغلاق الاتصال مع طرف المستخدم وليس كبقية أطر العمل؟
  5. لقد قمت بإنشاء مشروع بسيط باستخدام node.js وإطار العمل express.js وحاولت نشره على heroku ولكن يظهر لي الخطأ التالي: heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/ dyno= queue= wait= connect= service= status=503 bytes= وفي ملف package.json لدي: { "name": "test", "author": "", "description": "", "version": "0.0.1", "private": true, "scripts": { "start": "node app" }, "dependencies": { "express": "3.0.6", "jade": "*", }, "engines": { "node": "0.8.14" } } كيف يمكنني حل هذه المشكلة؟
  6. لقد حاولت إضافة ملفات تعريف الارتباط في إطار العمل express كما موجود في التوثيق من خلال: app.use(express.cookieParser('secretKey')); وأيضاً حاولت التالي: res.cookie('cookieKey', 'cookieValue', {signed: true}) ولكن لم ألاحظ أي فرق من طرف المستخدم فما زالت ملفات تعريف الارتباط تظهر دون تشفير، فما هو الفرق الحقيقي مع إضافة signed: true إلى ملفات تعريف الارتباط ؟
  7. لدي مشروع مبني باستخدام الجافاسكريبت express و node.js، وهو جاهز للنشر ولكن بداخله العديد من تعليمات الطباعة على console ضمن العمليات التي تجري فيه مثل: console.log() console.error() والمشروع سيبقى قيد العمل دون توقّف، حيث سيتم طباعة رسائل الخطأ عند حدوثها لإمكانية الوصول إليها ومعالجتها. هل هنالك طريقة لإضافة التاريخ والوقت لهذه الأخطاء أو المعلومات التي سيتم طباعتها في console؟ لأستطيع الوصول إلى هذه المعلومات بشكل أسرع.
  8. أعمل على مشروع من خلال إطار العمل express.js و node.js وأحاول تقسيم الشيفرة البرمجية إلى عدة ملفات بدلاً من تجميعها في ملف واحد باتباع بنية شبيهة بال MVC، فقمت بوضع الكود التالي ضمن الملف الرئيسي server.js var express = require('express'); var app = express.createServer(); var routes = require('./routes'); var controllers = require('./controllers'); routes.setup(app, controllers); app.listen(5000, function() { console.log('listening on port 5000'); }); وبعدها قمت بإنشاء ملفات المسارات كالتالي: exports.setup = function(app, controllers) { app.get('/', controllers.index); app.post('/user', controllers.users.index); app.post('/posts/:post', controllers.posts.create); ... }; ولكن كيف يمكنني مشاركة المتغيّر app الموجود في الملف الرئيسي مع المتحكّم المطلوب؟ أي هل يجب أن أقوم بإعادة تضمينه من خلال require أو يجب أن أقوم بتمريره إلى ملف المسارات وبعدها إلى المتحكّم؟ وفي حال نعم كيف يمكنني إجراء هذا التمرير؟
  9. لقد قمت بإضافة عملية التوثيق على خادم node.js باستخدام المكتبة passport.js وما أحاول تطبيقه الآن هو معرفة في حال كان المستخدم قد سجّل دخوله أم لا لإظهار عناصر محددة من الصفحة بهذا الشكل: (if loggedIn) <button>logout</button> (else) <button>login</button> <button>register</button> كيف يمكنني تحديد إذا كان المستخدم مسجّل دخوله إلى الموقع في passport ؟ وهل يتم التحقق من طرف الخادم أم من طرف المستخدم؟
  10. أستخدم إطار العمل express مع node.js، كيف يمكنني تضمين ملف نصي ضمن الكود بحيث يكون بهذا الشكل: var mytext = require("test.txt"); لاستعادته لاحقاً ضمن الكود أي: modules.exports = function(){ return mytext; } هل العملية السابقة صحيحة؟ وهل يمكنني تخزين محتوى كامل ضمن متغيّر واستعادته بهذا الشكل في node.js ؟
×
×
  • أضف...