jQuery $ .post与$ .ajax,身份验证

时间:2020-07-10 14:26:46

标签: c# jquery .net ajax owin-middleware

长时间搜索后,没有找到任何解决方案,所以就去了。

在out应用程序中,我们使用以下$ .post调用登录

 var config = {
                headers: { 'Content-Type': 'application/json; charset=utf-8' }
            }  

 $.post('/api/ManualLogin/Post/', manualLoginData, config).then...

在我们的后端,我们有一个Owin中间件,当以下调用为true时,它会执行一些操作

 if (context.IsAuthenticationRequest())
      {
       AuthenticationData authenticationData = context.GetAuthenticationData();
   .....

因为现在,我们有另一个Owin中间件,要求一些自定义标头参数,并且因为在$ .post中,我搜索时无法添加它们,因此必须将其切换到

 $.ajax({
        type: "POST",
        url: url,

问题在于,现在,第一个登录中间件的调用返回false,因此在那里没有任何工作。

我看了看电话亭,似乎$ .post在标头中发送了一个额外的cookie参数(默认情况下)。

我需要一些建议,或者为$ .post添加自定义标头参数,或者,我不知道如何设法通过$ .ajax发送该cookie,最后通过登录中间件来完成其工作。

我看到了带有$ .ajaxSetup的解决方案,但这将在全局范围内更改它,我不希望这样做,我只想在此登录呼叫中使用它...

希望我很清楚。谢谢

最新编辑: 看来context.IsAuthenticationRequest()是我们自定义的东西,对不起没看到。.

0 个答案:

没有答案