gpt4 book ai didi

java - Ajax 和 session ID

转载 作者:行者123 更新时间:2023-11-30 05:13:16 24 4
gpt4 key购买 nike

您如何知道 ajax 请求是相关的?

通常,对于 HTTP-HTML 请求,cookie 会存储表示 session ID 的 md5 哈希值。

我想补充一点,我的ajax调用是跨域的。

更新:

示例:

var data1 = 'asdf';
$.ajax({
url: 'http://differentdomain.com/ajax',
data: 'data1=' + data1
});

现在,许多客户端(浏览器/计算机)都会发出此 ajax 请求。我想知道它们源自单个浏览器 session 。我认为使用 session ID 可能是一个解决方案。

AJAX 和 session ID 是否有标准模式?我在服务器端使用 Java。

最佳答案

AJAX 请求是客户端的。使用 IE 的客户端 #1 访问您的站点并处理任何客户端代码,所有这些都是一个 session 的一部分。使用 Safari 的客户端 #2 访问您的站点并处理任何客户端代码,所有这些都是另一个 session 的一部分。

除非您生成 session ID,否则 JavaScript 本身无法提供 session ID。如果可以的话,为了唯一性,最好从服务器端生成或获取 session ID。如果没有,您可以使用类似 this 的方法.

如果您使用 PHP,您可以这样做:

var data1 = 'asdf';
var sessionId = '<?php echo session_id(); ?>';
$.ajax({
url: 'http://differentdomain.com/ajax',
data: 'data1=' + data1 + '&sid=' + sessionId
});

如果您使用 ASP.NET,您可以这样做:

var data1 = 'asdf';
var sessionId = '<% =Session.SessionId %>';
$.ajax({
url: 'http://differentdomain.com/ajax',
data: 'data1=' + data1 + '&sid=' + sessionId
});

如果[某些 java web 服务器](例如 Tomcat),您可以:

var data1 = 'asdf';
var sessionId = '<% session.getId() %>';
$.ajax({
url: 'http://differentdomain.com/ajax',
data: 'data1=' + data1 + '&sid=' + sessionId
});

关于java - Ajax 和 session ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2589660/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com