Saya membangun REST API untuk proyek saya. API untuk mendapatkan INFO pengguna tertentu adalah:
api.com/users/[USER-ID]
Saya juga ingin mengizinkan klien untuk memasukkan daftar ID pengguna. Bagaimana cara membangun API sehingga RESTful dan memasukkan daftar ID pengguna?
Jawaban:
Jika Anda meneruskan semua parameter Anda di URL, mungkin nilai yang dipisahkan koma akan menjadi pilihan terbaik. Maka Anda akan memiliki template URL seperti berikut:
sumber
…?id=1&id=2&id=3
, tidak ada jaminan bahwa parameter kueri duplikat akan digabungkan menjadi sebuah larik. Dengan string kueri di atas, PHP kebetulan memberi tahu Anda bahwaid
sama[1, 2, 3]
, tetapi Ruby on Rails memberi tahu Anda bahwa itu sama3
, dan kerangka kerja lain mungkin juga bertindak berbeda, misalnya mengatakanid
sama1
. URL seperti…?id=1,2,3
menghindari potensi kebingungan ini.IMO, panggilan di atas tidak terlihat tenang, namun ini adalah solusi cepat dan efisien (y). Tapi panjang URL dibatasi oleh webserver, misal tomcat .
Upaya tenang:
Server akan membalas URI sumber daya batchtask yang baru dibuat .
Sekarang klien dapat mengambil respons batch atau kemajuan tugas dengan polling
GET http://example.com/api/batchtask/1254
Beginilah upaya orang lain untuk menyelesaikan masalah ini:
sumber
Saya menemukan cara lain untuk melakukan hal yang sama dengan menggunakan
@PathParam
. Ini contoh kodenya.Panggil layanan dengan menggunakan url berikut.
dimana
sumber
Sebanyak saya lebih suka pendekatan ini: -
Cara yang benar adalah
atau
Beginilah rak melakukannya. Beginilah cara php melakukannya. Beginilah cara node melakukannya juga ...
sumber
Anda dapat membangun Rest API atau proyek yang tenang menggunakan ASP.NET MVC dan mengembalikan data sebagai JSON. Contoh fungsi pengontrol adalah:
Kemudian Anda cukup memanggil fungsi GetUsers melalui fungsi AJAX biasa yang memasok array Id (dalam hal ini saya menggunakan jQuery stringify untuk mengirim array sebagai string dan mendematerialisasikannya kembali ke pengontrol tetapi Anda cukup mengirim array int dan menerima itu sebagai array int di pengontrol). Saya telah membangun seluruh Restful API menggunakan ASP.NET MVC yang mengembalikan data sebagai json lintas domain dan dapat digunakan dari aplikasi apa pun. Itu tentunya jika Anda bisa menggunakan ASP.NET MVC.
sumber