Web API会话管理

时间:2017-09-11 06:06:57

标签: asp.net session asp.net-web-api asp.net-web-api2

我的要求 - 我有一个web api whch给我db的所有数据。我有一个.net网站,它使用这个api来获取所有数据。现在我想要的是当我登录我的网站时,我想在“API”中管理会话。

我知道web api中的会话不是一个好方法,但我仍然需要这样做。

我已经在web api中实现了会话管理(参考here)并且如果我从邮递员发送我的所有请求,它的工作正常(即我通过调用1方法在会话中设置变量)通过调用第二个方法检索该会话变量)。但是当我使用jQuery从asp.net网站做同样的事情时,我没有得到存储的会话变量(我注意到的是每次请求时我都会得到不同的会话ID)。

在会话中保存变量的代码

    $.ajax({
                url: 'http://localhost:63726/api/Login/Login',
                type: "GET",
                dataType: "JSON",
                success: function (data) {
                    alert("success");
                },
                error: function (data) {
                    alert("error");
                }
            });

检索存储在会话中的变量的代码

    $.ajax({
                url: 'http://localhost:63726/api/SessionCheck/LoginName',
                type: "GET",
                dataType: "JSON",
                success: function (data) {
                    alert("success");
                },
                error: function (data) {
                    alert("error");
                }
            });

我需要做些什么来实现我的目标..你的意见将节省我的时间......

2 个答案:

答案 0 :(得分:0)

请先阅读此Web Api Session storage

要从会话中检索数据,请使用javascript sessionStorage(而不是ajax)。

答案 1 :(得分:0)

我找到了答案Session management in web api