Node.js ve Express'ten Azure İşlevleri geçişi planlama
Arka uç Express uygulamasından sunucusuz geçişini planlamak için Express uygulamasını üç ana alana bölebilirsiniz:
- Çoğu zaman server.ts’de bulunan Express sunucusu
- Yollar/ klasöründeki yollar
- Hizmetler/klasörde bulunan veri erişim mantığı
Kodunuzu Express'ten Azure İşlevleri'a yeniden düzenlemek için, sonraki ünitede uygulamaya başlayacağınız şu eylemleri planlayacaksınız:
- Yeni bir Azure İşlevleri uygulaması oluşturun.
- hizmetler klasörünü Node.js Express'ten Azure İşlevleri uygulamasına kopyalayın. Bu, veri hizmetlerinin Express sunucusuna bağlı olmaması nedeniyle çalışır.
- Her yol uç noktası için yeni bir işlev API'si oluşturun.
- Tatil alma
- Tatil ekleme
- Tatili güncelleştirme
- Tatil silme
- İşlev kodunu hizmetler/klasördeki veri erişim mantığını kullanacak şekilde güncelleştirin.
- İşlev yollarını özgün Express rotalarıyla eşleşecek şekilde güncelleştirin.
Express route örneği
Bu, tatil hizmetinden tatil alan express rotasının basit bir örneğidir. Yol işleyicisinin parametrelerinin ve res
nesneleri olduğunu req
fark edin.
import * as express from 'express';
import { vacationService } from '../services';
const router = express.Router();
router.get('/vacations', (req, res) => { // API route
vacationService.getVacations(req, res); // Data access logic
});
Azure İşlevleri yol örneği
Bu, tatil hizmetinden tatil alan Azure İşlevleri yol işleyicisi ve rota tanımının basit bir örneğidir. Yol işleyicisinin parametrelerinin ve context
nesneleri olduğunu request
fark edin.
import { app } from '@azure/functions';
import { HttpRequest, HttpResponseInit, InvocationContext } from '@azure/functions';
import * as vacationService from '../services';
export async function getVacations(request, context) {
return {
status: 200,
jsonBody: vacationService.getVacations(); // Data access logic
};
};
app.http('get-vacations', { // API route
methods: ['GET'],
route: 'vacations',
authLevel: 'anonymous',
handler: getVacations
});
Azure İşlevleri uygulamasının yapısını anladıktan sonra kodunuzu özgün Node.js Express uygulamasının yapısıyla eşleşecek şekilde düzenleyebilirsiniz.
Sonraki alıştırmada İşlevler uygulamasını oluşturacak ve kodu Express sunucusundan İşlevler'e kaydıracaksınız.