ssl-server

خادم ويب SSL مع Express، يدعم HTTP/2

CI Test Coverage Audit

التثبيت

npm i @sumor/ssl-server --save

الشروط الأساسية

إصدار Node.JS

يتطلب إصدار Node.JS 16.x أو أعلى

يتطلب إصدار Node.JS ES module

نظرًا لأن هذه الحزمة مكتوبة بلغة ES module، يرجى تغيير الشيفرة التالية في ملف package.json الخاص بك:

{
  "type": "module"
}

الاستخدام

استضافة خادم بسيط

import createApp from '@sumor/ssl-server'
const app = createApp()

// listen on port 443 by default, and redirect 80 to https 443
await app.listen()

إضافة ملفات SSL

الرجاء إضافة ملفات SSL إلى مجلد الجذر ssl بالأسماء التالية:

إذا لم يتم العثور عليها، سيقوم الخادم بتوليد شهادة ذاتية التوقيع.
إذا تم تغيير ملفات SSL، سيتم إعادة تحميلها تلقائيًا.

الميزات

يدعم جميع ميزات express، الفرق الوحيد هو الأسلوب listen و close. الرجاء الرجوع إلى المثال أدناه لمزيد من التفاصيل.

إضافة وسيط ومسارات

import createApp from '@sumor/ssl-server'
const app = createApp()
import bodyParser from 'body-parser'

// يمكنك إضافة أي وسيط express
app.use(bodyParser.json())

// إضافة مسارات
app.get('/', (req, res) => {
  res.send('مرحبًا بالعالم!')
})

// الاستماع هو دالة غير مزامنة
await app.listen()

قفل الخادم بشكل قاطع

import createApp from '@sumor/ssl-server'
const app = createApp()

// الاستماع هو دالة غير مزامنة
await app.listen()
// الغلق هو دالة غير مزامنة
await app.close()

الاستماع على منفذ مخصص

import createApp from '@sumor/ssl-server'
const app = createApp()

// الاستماع هو دالة غير مزامنة
await app.listen(8443, 8080)
console.log(`الخادم يعمل على https://localhost:8443/`)
console.log(`خادم إعادة التوجيه يعمل على http://localhost:8080/`)