相关疑难解决方法(0)

如何在jQuery Ajax调用之后管理重定向请求

我正在使用$.post()Ajax调用servlet,然后使用生成的HTML片段替换div用户当前页面中的元素.但是,如果会话超时,服务器会发送重定向指令以将用户发送到登录页面.在这种情况下,jQuery正在用div登录页面的内容替换元素,迫使用户的目光确实见证了罕见的场景.

如何使用jQuery 1.2.6从Ajax调用管理重定向指令?

javascript ajax jquery redirect

1319
推荐指数
26
解决办法
84万
查看次数

JWT(JSON Web Token)自动延长到期时间

我想对我们的新REST API实现基于JWT的身份验证.但是由于在令牌中设置了到期,是否可以自动延长它?如果他们在那段时间内积极使用该应用程序,我不希望用户在每X分钟后需要登录.这将是一个巨大的用户体验失败.

但是延长过期会创建一个新令牌(旧令牌在到期之前仍然有效).每次请求后生成一个新令牌听起来很愚蠢.当多个令牌同时有效时,听起来像是一个安全问题.当然,我可以使用黑名单使旧的旧的无效,但我需要存储令牌.JWT的一个好处就是没有存储空间.

我发现Auth0是如何解决它的.它们不仅使用JWT令牌,还使用刷新令牌:https: //docs.auth0.com/refresh-token

但同样,要实现这一点(没有Auth0),我需要存储刷新令牌并保持其过期.那么真正的好处是什么?为什么不只有一个令牌(不是JWT)并在服务器上保持过期?

还有其他选择吗?使用JWT不适合这种情况吗?

security authentication api node.js jwt

465
推荐指数
10
解决办法
17万
查看次数

在JavaScript中捕获302 FOUND

我使用jQuery向我的服务器发出一个AJAX POST请求,该请求可以返回状态为302的HTTP响应.然后,JavaScript只是向此URL发送GET请求,而我想在此响应中将用户重定向到URL.这可能吗?

javascript ajax jquery http-status-code-302

36
推荐指数
2
解决办法
9万
查看次数

在AJAX调用中,未遵循302

我正在使用jQuery 1.6.2向同一域上的页面发出POST AJAX请求.该页面将302重定向到另一个页面.

现在,在我的本地计算机上工作正常,但在我们的生产服务器上,从未遵循重定向,并且在Chrome检查器中,该请求被称为"已取消".

如果我在不涉及javascript的情况下访问同一页面,一切正常,正如我所说,AJAX在我的本地机器上运行,但在生产服务器上运行.

有谁知道这会导致什么?

服务器之间存在一些差异(OS X,Apache2,PHP5.3.6,本地机器上的HTTP,Ubuntu,Lighttpd,PHP5.3.3,生产中的HTTPS),但对我来说没有任何区别应该有所不同.

ajax jquery

22
推荐指数
2
解决办法
5万
查看次数

我应该为我的API使用哪种身份验证策略?

我有一个客户端angular-js应用程序.我有一个服务器端nodejs API.客户端和服务器端应用程序位于不同的域上.客户端使用API​​来获取或发布一些数据.客户端也需要从服务器端获取图像并在浏览器中显示它们.

我使用passport nodejs模块进行身份验证.我不知道哪种认证策略对我更好.我认为有两种类型的身份验证策略:基于令牌和基于cookie.我认为在我的情况下这两种类型都没用:

  1. 如果我使用基于令牌的策略,那么我应该在API的每个请求中发送带有令牌的Authentication头.我可以在AJAX请求中发送标头,但如果我想显示位于服务器端的图像,我就有问题了.因为浏览器不会在<img>标签中发送标头.

  2. 如果我使用cookies,那么我没有图像问题.但是我遇到了AJAX请求的问题.因为会话cookie存储在服务器端应用程序的域中.如果我从客户端域发送AJAX请求,那么我应该发送每个请求的cookie.我使用XmlHttpRequest进行AJAX,我应该使用withCredentials选项发送cookie.但在跨域请求中,浏览器将在每个AJAX请求之前发送预检(OPTION)请求.浏览器不会发送带有OPTION请求的cookie.这对我来说是一个问题,因为如果没有授权,服务器端API无法对OPTION请求做出正确的响应.

采用的解决方案是什么?

authentication api authorization passport.js

4
推荐指数
1
解决办法
2562
查看次数