Saya merancang API yang tenang dan dihadapkan dengan masalah judul, disajikan kembali untuk kejelasan:
Haruskah saya gagal dengan cepat jika klien mengirim parameter yang tidak dikenal? Sebagai contoh,
http://example.com/api/foo?bar=true&paula=bean
Di atas, bar
adalah parameter yang valid tetapi paula
tidak ditentukan oleh API. Haruskah saya
- Peringatkan klien kesalahan
- Gagal cepat
- Abaikan itu
Jika saya memperingatkan klien, saya hanya bisa mengeluarkan peringatan untuk parameter pertama, karena mereka bisa mengirimkan jumlah mereka yang hampir tak terbatas, dan server mungkin memiliki hal-hal yang lebih baik untuk dilakukan. Demikian pula, ketika gagal, itu hanya akan menentukan param tidak valid pertama sebagai masalah.
Saya lebih suka kegagalan daripada mengeluarkan peringatan untuk memaksa programmer untuk mengambil tindakan, karena mereka mungkin mengabaikan masalah dan terus membuang-buang sumber daya, atau berakhir dengan mengkultivasi kargo sendiri secara tidak sengaja. Tidak melakukan hal yang lebih buruk dalam hal itu.
Apakah argumen saya masuk akal? Apakah ada praktik yang diterima tentang hal-hal seperti itu?
api/v1
dll. Akan mengatasi hal itu, tetapi masih tidak memungkinkan untuk pembaruan tambahan. +1