设置Breeze JS ajax适配器以发送查询字符串参数,而不是标题
是否可以设置Breeze JS ajax适配器来发送额外的查询字符串参数?现在我正在使用自定义标题参数,但想将我们的应用程序改为使用查询字符串参数 当前代码:设置Breeze JS ajax适配器以发送查询字符串参数,而不是标题,ajax,jquery,http-headers,query-string,breeze,Ajax,Jquery,Http Headers,Query String,Breeze,是否可以设置Breeze JS ajax适配器来发送额外的查询字符串参数?现在我正在使用自定义标题参数,但想将我们的应用程序改为使用查询字符串参数 当前代码: function configureAjaxAdapter() { var ajaxAdapter = breeze.config.getAdapterInstance("ajax"); ajaxAdapter.defaultSettings = { beforeSend:
function configureAjaxAdapter() {
var ajaxAdapter = breeze.config.getAdapterInstance("ajax");
ajaxAdapter.defaultSettings = {
beforeSend: function(xhr, settings) {
xhr.setRequestHeader("db", config.db);
xhr.setRequestHeader("login", config.login);
}
};
}
请看EntityQuery.withParameters方法。这是在查询中传递查询字符串参数的“首选”(且安全)机制。例如:
var params = {
db: config.db,
login: config.login
};
var q = EntityQuery.from("Foos").withParameters(params);
myEntityManager.executeQuery(q).then(...)
这很好,但我最大的问题是,如果你传递像用户名和密码这样的安全信息,那么它们将以纯文本传输。。。有没有一种方法可以使用post将一个特殊对象传递给breeze控制器?如果您希望,您可以通过ajax调用直接将其传递给breeze控制器,而无需在这一步中实际使用breeze。这就是说,我们正在开发一种称为JsonRequestAdapter的东西,它也将实现您想要的功能。但是这可能需要几个星期才能发布。