ក្រោយពីមានតំណរភ្ជាប់ទៅកាន់មូលដ្ឋានទិន្នន័យ MongoDB រួចហើយ យើងត្រូវប្រើប្រាស់តំណរភ្ជាប់នេះតាមរយៈអថេរ prisma ដោយធ្វើដូចខាងក្រោមនេះ៖
import { PrismaClient } from '@prisma/client'
const prisma = new PrismaClient()
យើងបានដឹងរួចមកហើយថា ក្បួនកណ្តាលឬ middleware ត្រូវយកទៅប្រើជាស្វ័យប្រវត្តិនៅគ្រប់ការចូលទៅតាមផ្លូវទាំងឡាយ ហើយយើងអាចបង្កើតនូវទិន្នន័យផ្សេងៗរក្សាទុកនៅក្នុងសំណុំទិន្នន័យ locals សំរាប់ប្រើប្រាស់ទាក់ទងនឹងផ្លូវទាំងនោះ។ អាស្រ័យហេតុនេះ យើងក៏អាចរក្សាទុកនូវអថេរនៃតំណរភ្ជាប់ prisma នៅក្នុងសំណុំទិន្នន័យ locals នេះបានដែរ ក្នុងគោលបំណងអាចប្រើប្រាស់តំណរភ្ជាប់នេះនៅក្នុងឯកសារទាក់ទងនឹងផ្លូវទាំងឡាយ។
// src/middleware.js
import { PrismaClient } from '@prisma/client'
const prisma = new PrismaClient()
export function onRequest ({ locals, request }, next) {
locals.prisma = prisma
locals.info = 'ព័ត៌មានស្តីពី prisma'
return next()
}
យើងត្រូវរំលឹកឡើងវិញថាក្រៅពីឯកសារប្រភេទ .astro ឯកសារប្រភេទ JavaScript ឬ .js ក៏អាចត្រូវប្រើប្រាស់សំរាប់ផ្លូវណាមួយបានដែរ ហើយក្នុងករណីនេះ ក្បួនខ្នាតនៅក្នុងឯកសារ .js ត្រូវហៅថា ក្បួនចុងផ្លូវ ឬ API Endpoint ។ ដូចនេះ ការស្រង់យកតំណរភ្ជាប់ prisma នៅក្នុងក្បួនចុងផ្លូវអាចត្រូវធ្វើឡើងដូចខាងក្រោមនេះ៖
// src/pages/api/login.js
export async function GET({params, request, locals}){
const prisma = locals.prisma
const info = locals.info
return new Response(
JSON.stringify({
prisma: info
})
)
}