पाठ 4 / 32
Request और Reply ऑब्जेक्ट
request और reply objects से params, queries, headers व bodies पढ़ें और responses भेजें।
request और reply
request आने वाली HTTP request विवरण रखता है (URL, headers, body, params, query)। reply response भेजने के लिए methods वाला object है—performance के लिए pooled है।
Request डेटा पढ़ना
Request object से path params, query strings, headers, और body access करें।
fastify.get('/users/:id', async (request, reply) => {
const { id } = request.params;
const { filter } = request.query;
const token = request.headers.authorization;
return { userId: id, filter, hasToken: !!token };
});Replies भेजना
Object return करें (auto-serialized to JSON) या custom status codes और headers के लिए reply methods उपयोग करें।
fastify.post('/items', async (request, reply) => {
// Auto-JSON serialization
return { id: 1, status: 'created' };
});
fastify.delete('/items/:id', async (request, reply) => {
// Custom status and location header
return reply.status(204).send();
});return या send, दोनों नहीं
async handler में payload return करें या reply.send() call करें। दोनों करने पर reply पहले ही भेजे जाने का warning आता है।
त्वरित जाँच
त्वरित जाँच: कौन सा एक chain में status code set करके JSON भेजता है?
- `reply.code(201).send({id: 1})`
- `request.code(201)`
- `reply.json(201)`
Answer
`reply.code(201).send({id: 1})` — `reply.code()` reply ही लौटाता है, इसलिए `.send()` chain हो जाता है।