2014-10-06 114 views
1

我正在开发将使用在线API的HTML应用程序。 此应用程序将验证用户和列出与用户相关的内容。 API是使用经典的asp开发的。并请求从这个html使用j查询ajax函数。跨域请求与信用

但在涉及到用户,这将在服务器上使用会话变量访问数据它不显示任何类型的数据导致会话变量都不能维持在此应用程序

我们能保持在这个网站的应用程序会话变量,而不必相同的域

jQuery代码是

$.ajaxSetup({ 
cache: false , 
xhrFields: { 
    withCredentials: true 
}, 
crossDomain :true 
}); 
+1

如果你问经典ASP中的会话变量是否属于域,那么答案是肯定的,他们是 – John 2014-10-06 13:27:43

+0

你可以尝试设置一个隐藏字段来存储你的直到页面被回发给主应用程序。 – Paul 2014-10-06 15:17:08

回答

0

Session变量仅适用:在原始申请的范围,并且不能被从其他应用程序或服务器访问。

如果会话变量中的数据存储在别处并且可以从某种数据库中检索,那么向api添加身份验证以返回此数据是一种方法,但可能存在安全问题,应在您的身份验证中解决这些问题。否则,请考虑将会话数据保留到无会话的解决方案,Cookie或db-cookie,这些解决方案可以在原始范围之外进行限定,然后可以让其他服务器访问。这个问题可能对此有所帮助:share session between classic ASP and PHP over than using database