在处理数据库查询时如何模糊JSON响应?

[ { "businesscards_id":"12", "X_SIZE":"1.75x3", "X_PAPER":"14ptGlossCoatedCoverwithUV(C2S)", "X_COLOR":"1002", "X_QTY":"250", "O_RC":"NO", "F_PRICE":"12490", "UPS_GROUND":"12000", "UPS_TWODAY":"24000", "UPS_OVERNIGHT":"36000" } ] 

这个JSON编码响应可以在Chrome的控制台中看到。 此数组是从数据库查询返回的。 它显示了我的表列名称。 出于安全原因,我不想显示我的表列名。 如何对此JSON对象进行模糊处理或散列和/或编码或动态重写以使我的表列名保密?

这实际上取决于您希望在收到记录后如何使用该记录。 一种策略可能是仅返回值的数组,丢弃键。 然后在您的代码中,使用您处理记录时所需的数组值的私人知识。 就像是:

 var result=[]; Object.keys(record).forEach(function(key){result.push(record[key]);}); 

然后在您的代码中,使用数组索引来访问值。

不要对你的JSON做任何事情。

如果您不希望列名可见,请不要使用列名。 使用新密钥创建一个新数组以使用JSON发送,然后将该数组更改回包含列名的数组。

但人们看到它们确实应该不是问题。 没有人可以访问您的数据库,因此让人们看到列名称不是问题。

SQL语句:

 SELECT `col_name` AS 'something_else' 

但是,正如其他人所说,不要为了安全而这样做。 这毫无意义。