Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs ng token auth,ionic,Desive_token_auth;令牌在xhr请求中随机丢失_Angularjs_Cordova_Ruby On Rails 4_Devise Token Auth - Fatal编程技术网

Angularjs ng token auth,ionic,Desive_token_auth;令牌在xhr请求中随机丢失

Angularjs ng token auth,ionic,Desive_token_auth;令牌在xhr请求中随机丢失,angularjs,cordova,ruby-on-rails-4,devise-token-auth,Angularjs,Cordova,Ruby On Rails 4,Devise Token Auth,我继承了一款Ionic应用程序,它使用ng token auth+Desive_token_auth处理身份验证和前后之间的会话 发生的事情很奇怪。有时(特别是在连接速度较慢的情况下)请求(或响应)会丢失,之后我只会收到401http错误 我知道每次我发送请求时,令牌都会过期,但是当xhr请求被取消时(我想是服务器取消了,或者是浏览器取消了,我不知道),令牌就过期了,而没有被design\u token\u authgem生成的新令牌替换 我知道Rails,但我对Angular和Ionic都不熟

我继承了一款Ionic应用程序,它使用
ng token auth
+
Desive_token_auth
处理身份验证和前后之间的会话

发生的事情很奇怪。有时(特别是在连接速度较慢的情况下)请求(或响应)会丢失,之后我只会收到
401
http错误

我知道每次我发送请求时,令牌都会过期,但是当
xhr
请求被取消时(我想是服务器取消了,或者是浏览器取消了,我不知道),令牌就过期了,而没有被
design\u token\u auth
gem生成的新令牌替换

我知道Rails,但我对Angular和Ionic都不熟悉,我也不知道该去哪里找

在阅读了很多SO的答案之后,我发现没有人会遇到我的问题(发生在本地和舞台/制作中),我检查了以下内容

  • storage
    设置为
    localStorage
  • config.batch\u request\u buffer\u throttle=20秒
  • 在被取消的请求之间没有模式,有时我对用户名执行get,有时执行post或put以添加评论
  • 这不是CORS的问题,因为它总是会发生或者永远不会发生。(此外,我正在使用代理,如中所述)
  • 可能与chrome bug有关。但是,我怎么能确定呢
让我困惑的是,它只是偶尔发生,而不是总是发生。(并且后端没有错误)

我找到的唯一解决方法是更改
config。将每个请求上的\u头\u更改为
false
以这种方式避免重新生成令牌


但我不喜欢这个解决方案,因为我认为它以一种不安全的方式隐藏了真正的问题,而不是解决令牌丢失问题。有什么建议吗?

请检查这件事:

  • 版本:您使用的是此gem的哪个版本(和,或如果适用)

  • 请求和响应标题:可以在浏览器web检查器的“网络”选项卡中找到这些标题

  • Rails Stacktrace:这可以在API的log/development.log中找到

  • 环境信息:您的应用程序与环境信息有何不同

    这可能包括(但不限于)以下细节:

    路由:您是否使用了一些疯狂的名称空间、范围或约束

    Gems:您是否在使用MongoDB、Grape、RailsApi、ActiveAdmin等

    自定义覆盖:您在[自定义控制器覆盖]方面做了哪些工作 ?

    自定义前端:您使用的是、还是其他


您找到解决方案了吗?我也有同样的问题……遗憾的是没有(但我发现这是由于中间的一个失败的请求导致令牌被丢弃,但是我们仍然保持着<代码>错误< /代码>。