我正在尝试为基于ajax的登录表单确定最安全的方法来进行身份验证并设置客户端cookie.我见过有关XSS攻击的事情,比如:
和
http://www.codinghorror.com/blog/archives/001167.html
所以,我想我的核心问题是......
1)使用纯粹的ajax来设置cookie是否安全,如果是,那么最安全的方法是什么(httpOnly + SSL +加密值等)?
2)纯粹的ajax方法是否涉及设置cookie客户端?这一切都安全吗?
3)在所有主流浏览器/操作系统中以这种方式设置cookie是否可靠?
4)使用隐藏的IFrame是否更安全(调用网页来设置cookie)?
5)如果可能的话,是否有人为此编写代码(PHP是我的后端)?
我的目标是设置cookie并让它们可用于下次调用服务器而无需离开页面.
我真的想要确定共识,最安全的方式来做到这一点.最终,这个代码计划成为开源的,所以请不要使用商业代码(或者没有任何不能经得起公众监督的代码)
谢谢, - 托德
简短的问题:有没有办法向服务器发出jsonp请求,捕获请求,但不能将其解析为javascript?我在jQuery 1.5中使用dataType:"jsonp text"但它无法正常工作.
我正在尝试使用jsonp通过AJAX访问跨域URL.问题是另一个域(我大学的目录列表)很老,我怀疑服务器是否支持jsonp.
我想要的是:一种从jsonp请求以纯文本形式访问响应的方法.或者,如果我可以从失败的jsonp请求访问原始响应 - 这也可以.
提前致谢!
码:
ajax_url = 'https://somesite/?searchTerm='+query+'&searchType=lastname';
var jqxhr = $.ajax({type:"GET",
url: ajax_url,
dataType:"jsonp text",
callback: "whatever",
success:function(responseData) {
$('div#content').text( responseData.slice(0, 100) );
dbg(responseData.slice(0,100));
}})
.success(function() { alert("success"); })
.error(function(obj, errStr) { alert("error"); dbg("error: " + errStr + "test: " + test.responseText + this.responseTxt);})
.complete(function() { alert("complete"); });
Run Code Online (Sandbox Code Playgroud)