由于我是新手,我的问题可能非常简单。我用谷歌搜索,但没有找到一个令人信服的答案我的问题。在开发REST API时,API的目的是创建一个由现有学生组成的团队。 POST方法,截至目前,请求正文将在请求正文中保存学生ID(主键)。
请求正文在访问REST API时是否可以包含Tables主键?
答案 0 :(得分:1)
是的,它可以。但是,将DB ID暴露给客户端并不是最佳做法。您可能需要通过唯一用户名或电子邮件来识别玩家。
答案 1 :(得分:1)
您可以使用加密器加密Id或主密钥,然后在服务器端接收时对其进行解密。这将保存漏洞问题,因为您将在服务器端验证ID,因此在传递Id的POST请求时无法保存恶意问题。
我将再次重新发布整个答案,但只是添加概述
@JsonIgnore
private Long PrimaryKey;
private String Id;
//Other variables
public Long getDecryptedPrimaryKey(){
//Decryption Logic for Id value
}
Public String getId(){
//Encryption Logic
}
这里当JSON Serialiser获取Id时,它将调用Id的getter,它将自动加密,而当你保存或更新数据时,你可以调用getDecryptedPrimaryKey来获取实际值。