Ele aldığım birkaç sunucu, istemcinin bir başarısızlık olarak değerlendirmesi gereken talepler için HTTP 200'ü döndürür, vücutta 'başarı: yanlış' gibi bir şey olur.
Bu, özellikle başarısız kimlik doğrulama durumlarında bana HTTP kodlarının uygun bir şekilde uygulanması gibi gözükmüyor. '4xx' isteğin değiştirilinceye kadar tekrar yapılmaması gerektiğini belirtirken, '5xx' isteğin geçerli olabileceğini veya yeniden denenebileceğini ancak başarısız olduğunu belirtirken, özetle özetlenen HTTP hata kodlarını okudum. Bu durumda 200: oturum açma başarısız oldu veya 200: bu dosyayı bulamadı ya da 200: eksik parametre x, kesinlikle yanlış görünüyor.
Öte yandan, '4xx’in sadece istekle ilgili yapısal bir sorunu göstermesi gerektiği iddiasını görebiliyorum. Bu yüzden, 200'ü geri göndermek uygundur: 401 yetkisiz kullanıcı / şifre yerine izinsizdir, çünkü müşterinin talepte bulunmasına izin verilir, ancak yanlış olur. Bu argüman, eğer sunucu isteği işleme koyabildiyse ve bir karar verebiliyorsa, cevap kodu 200 olmalı ve daha fazla bilgi için gövdeyi kontrol etmek müşteriye kalmıştır.
Temel olarak, bu bir tercih meselesi gibi görünüyor. Ama bu tatmin edici değil, bu yüzden herhangi birinin bu paradigmalardan birinin daha doğru olmasının bir sebebi varsa bilmek isterim.
success: false
isteğin başarısız olduğu ve bunu bildiğiniz anlamına gelir. 500 olmalı. Kötü kullanıcı adınız / şifreniz gibi bir şey 401 olurdu. Bu belirsiz değil.