簡體   English   中英

API 端點的命名約定

[英]Naming convention of API endpoints

我有這個實體。

@Entity
public class Dealer{
    @EmbeddedId
    private DealerIdKey idKey;
   
    @NotNull
    
    private LocalDate date;
}
@Embeddable
@Data
public class DealerIdKey implements Serializable {

    private static final long serialVersionUID = 1L;
    @NotNull
    @Size(max = 6)
    private String code;
    @NotNull
    @Size(max = 4)
    private String des;
}

我想在 controller 中創建刪除映射

@Autowired
private DealerRepository repo;
@DeleteMapping("/dealer/{id}")
    @ResponseBody
    public void delete(@NotNull @PathVariable(name = "id", required = true) DealerIdKey id) {
        repo.deleteById(id);
    }

controller的終點應該是什么? 或者我寫的方式是正確的方式?

由於您的端點操作(HTTP 操作)屬於 DELETE 類型,因此您已經在端點上聲明了您的意圖。 所以你寫端點的方式在我看來(和一般慣例)是正確的。

但是,如果您已經制定了約定,請使用您的項目中已經使用的任何約定。 一致性是關鍵。

如果它是一個干凈的石板,請不要在端點中添加 CRUD function 名稱。

如果您想要更深入的答案,我會通讀資源。 但主要的收獲是在項目中保持一致。 因此,如果您選擇該約定,請遵守該約定。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM