Latihan - Membuat RESTful fungsi
API Manajer Produk akan mendapatkan peningkatan gaya serius dari Anda, pengembang Tailwind Traders. Dalam latihan ini, Anda akan mengubah semua fungsi yang Anda buat sebelumnya menjadi fungsi RESTful dengan mengubah file konfigurasinya.
Buat rute GetProducts RESTful
Di Visual Studio Code, buka file
api/src/index.ts
.Dalam definisi rute untuk GetProducts, batasi
methods
properti sehingga hanya berisi nilaiGET
.methods: ['GET']
route
Tambahkan properti dengan nilaiproducts
untuk rute/api/products
lengkap .route: 'products',
Definisi rute lengkapnya adalah:
app.http('GetProducts', { methods: ['GET'], route: 'products', // <- route: /api/products authLevel: 'anonymous', handler: GetProducts });
Simpan file.
Catatan
Menyimpan file akan menyebabkan proses Azure Functions menghentikan debugger, dan akan membuatnya terputus. Jangan khawatir. Anda tidak merusak apa pun. Hanya saja Anda telah membuat perubahan mendasar pada bagaimana fungsi disajikan, jadi Anda harus memulai ulang proyek setelah menyelesaikan semua pembersihan spring REST ini.
Membuat RESTful fungsi CreateProduct
Masih dalam
api/src/index.ts
file, batasi properti yang diizinkanmethods
kePOST
.methods: ['POST']
route
Tambahkan properti dengan nilaiproducts
untuk rute/api/products
lengkap .route: 'products',
Definisi rute lengkapnya adalah:
app.http('CreateProduct',{ methods: ['POST'], route: 'products', authLevel: 'anonymous', handler: CreateProduct });
Simpan file.
Membuat RESTful fungsi UpdateProduct
Masih dalam
api/src/index.ts
file, batasi properti yang diizinkanmethods
kePUT
.methods: ['PUT'],
route
Tambahkan properti dengan nilaiproducts
untuk rute/api/products
lengkap .route: 'products',
Definisi rute lengkapnya adalah:
app.http('UpdateProduct', { methods: ['PUT'], route: 'products', authLevel: 'anonymous', handler: UpdateProduct });
Simpan file.
Membuat RESTful fungsi DeleteProduct
Masih dalam
api/src/index.ts
file, batasi properti yang diizinkanmethods
keDELETE
.methods: ['DELETE']
Perbarui rute untuk menggunakan id produk sebagai parameter rute.
route: 'products/{id}',
Definisi rute lengkapnya adalah:
app.http('DeleteProduct', { methods: ['DELETE'], route: 'products/{id}', authLevel: 'anonymous', handler: DeleteProduct });
Simpan file.
Memulai proyek
Mulai proyek Azure Functions dengan menekan F5.
Perhatikan bahwa URL untuk titik akhir fungsi Anda sekarang berbeda.
Lihatlah API yang menakjubkan itu. Sangat cantik. Perhatikan bagaimana Anda menentukan rute yang sama persis untuk fungsi CreateProduct, UpdateProduct, dan DeleteProduct. Hanya metode permintaan HTTP yang berbeda. Anda telah mengubah tiga URL menjadi satu, sementara masih memiliki tiga titik akhir. Anda seorang pesulap.