我使用rails和angularjs构建了一个应用程序。当我尝试使用rails通过json请求访问数据表单数据库时,它会在控制台中显示所有响应数据。它可能会导致安全问题。那么有什么路由不在控制台中显示数据..?
答案 0 :(得分:0)
JSON代表JavaScript Object Notation。在网页上运行的Javascript在客户端运行。
这意味着您在JS中编写并发送连接的任何代码都可以由客户端进行编辑和操作。这也适用于JSON。
如果您将客户端发送给他们,则无法阻止客户端查看受限数据。您应该考虑什么为什么您正在这样做。
您应该只发送他们应该有权查看的客户敏感信息(例如,只有他们的银行帐户详细信息,而不是每个人的详细信息)。您可以对用户进行身份验证和授权,以确保是这种情况。
您还可以考虑让一些基于AJAX的系统一次只发送部分敏感数据,这样就不会在一个请求中完整地公开它。
修改强>
我刚刚重新阅读了你的问题。
创建用户后rails的响应应该在模型上具有自定义as_json
方法,该方法为该用户发送JSON ,不包括敏感信息。
例如:
def as_json(options = nil)
defaults = { methods: :status, except: [:created_at, :updated_at, :password, :password_confirmation] }
defaults.merge! options if options
super defaults
end
在回复中,请致电
@user.to_json