我在服务器端使用Spring MVC在客户端使用骨干js。 我需要的是基本上只要有一个过滤器,只要从骨干网进行服务器调用就可以过滤掉从安全角度出发的字符 - 在post或get请求中。
我可以编写一个在发布/调用服务器端之前调用的函数,但是如果有通用的方法,我希望看到它。我可以编写一段代码,在每次服务器调用之前过滤/替换这些字符。
答案 0 :(得分:0)
尽管它应该由后端处理,并且前端应该只为好心的用户(而不是那些明显试图做错事的人)愉快地失败,这是你的解决方案:
因为每个Backbone请求都是使用Backbone.ajax通过Backbone.sync进行的,所以只需覆盖Backbone.ajax:
var ajax = Backbone.ajax;
Backbone.ajax = function (options) {
// check if options.data is an object or an string;
var data = options.emulateJSON ? JSON.stringify(options.data) : options.data;
// do your sanitization here at data
// ...
// dont forget to sanitize your url options.url
// ...
options.data = options.emulateJSON ? JSON.parse(data) : data;
// call the original method
return ajax(options);
};
希望我帮助过。