AngularJS 会忽略 HTTP 标头中的 Set-Cookie

2024-01-10

我正在开发一个基于客户端 AngularJS 和服务器端 API(Tomcat + Jersey for WS)的 Java 应用程序。

我的API的某些路径受到限制,如果用户没有会话,则返回的响应状态为401。在客户端,401 http状态被拦截以将用户重定向到登录页面。

用户通过身份验证后,我在服务器端创建一个会话


httpRequest.getSession(true);  
and the response send to the client does have the Set-cookie instruction in its header :


Set-Cookie:JSESSIONID=XXXXXXXXXXXXXXXXXXXXX; Domain=localhost; Path=/api/; HttpOnly
  

问题是 cookie 永远不会放在客户端。当我检查 localhost 域的 cookie 时,它​​是空的,因此下一个请求的标头中没有此 cookie,并且客户端仍然无法访问我的 API 的受限路径。

客户端和服务器位于同一域,但它们没有相同的路径和相同的端口号:

客户 :http://localhost:8000/app/index.html

服务器 :http://localhost:8080/api/restricted/

附加信息:双方均启用 CORS:


"Access-Control-Allow-Methods", "GET, POST, OPTIONS"
"Access-Control-Allow-Origin", "*"
"Access-Control-Allow-Credentials", true  

有什么办法可以让 Set-cookie 正常工作吗? 这是 AngularJS 相关的问题吗?


我找到了一个AngularJS 中的问题 https://github.com/angular/angular.js/pull/1209这帮助我前进。

看起来"Access-Control-Allow-Credentials" : true客户端没有设置。 操作说明$httpProvider.defaults.withCredentials = true被忽略了。

我将 $resource 调用替换为配置参数中带有 {withCredentials:true} 的简单 $http 调用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AngularJS 会忽略 HTTP 标头中的 Set-Cookie 的相关文章

  • 我可以从 HTTP 请求中找到无线接入点的 BSSID(MAC 地址)吗?

    假设有人在咖啡店里无线连接到互联网 并向 johnsveryownserver com 发送 HTTP 请求 服务器端 有什么方法可以确定我的MAC地址吗 无线接入点他们连接到什么 请注意 我对他们机器的 MAC 地址不感兴趣 如果我无法使
  • Twisted 的 Deferred 和 JavaScript 中的 Promise 一样吗?

    我开始在一个需要异步编程的项目中使用 Twisted 并且文档非常好 所以我的问题是 Twisted 中的 Deferred 与 Javascript 中的 Promise 相同吗 如果不是 有什么区别 你的问题的答案是Yes and No
  • 在 MongoDB 中查找具有字符串 ID 数组的文档

    我有一个 id 字符串数组 我想将其与 find 函数一起使用 db companies find id in arr arr看起来像这样 563a2c60b511b7ff2c61e938 563a2c60b511b7ff2c61e8b7
  • 使用 Javascript 在 Imacros 中循环

    我如何使用 javascript 循环 imm imacros 脚本 我搜索了一下 发现了这个 for i 0 i lt n i iimPlay marconame iim 但当我使用它时 我的浏览器 Firefox 18 挂起 for i
  • 如何将中间件绑定到socket.io中的事件

    现在您可以将中间件绑定到io use middleware 但这仅在建立套接字连接时触发 有没有办法在将其传递给事件句柄之前拦截它 就像在expressjs中一样 换句话说 In 快递 js你可以做 app get middleware1
  • ant-d upload中如何为removeFile添加PopConfirm一个图片文件

    我正在使用 Ant d Upload 通过本地系统上传文件 然后单击文件预览图像上的删除图标 图像文件将被删除 我想添加一个弹出确认 所以我尝试在 onRemovefunction 中添加确认作为承诺但它不起作用 它在浏览器中显示警报 on
  • 如何通过 HTML 按钮播放声音

    我目前通过网站播放音乐的方法是通过 HTML 音频标签 不过我希望能够通过 HTML 按钮来播放它 该按钮应该能够在播放和停止之间切换音乐 我在 JSFiddle 创建了一个示例 但不知道如何实现它 有人可以告诉我如何使用我的 JSFidd
  • 将一个文本框的内容复制到另一个文本框

    假设在文本框中输入了一个条目 是否可以在第二个文本框中保留相同的输入文本 如果是这样 这是如何完成的
  • 将 jquery-mobile 与 Webpack 结合使用

    我正在尝试使用 webpack 加载 jquery mobile 但到目前为止还没有运气 我知道 jquery mobile 依赖于 jquery ui 而 jquery ui 又依赖于 jquery 如何在 Webpack 中设置这样的场
  • JavaScript 动画平滑滚动

    默认情况下 当您有这样的片段链接时 a href some url some fragment some text a 浏览器立即向下滚动到该片段 我该如何编程才能使用标准 JS 顺利地向下移动到该片段 这是一个例子 Example htt
  • v-file-input .click() 不是函数

    我试图以编程方式触发 v file input 的 click 事件 因为它在 Vuetify 的文档中 但它显示一个错误this refs imagePicker click is not a function我在这里错过了什么吗 代码重
  • 使用 jquery 将字符串数组转换为整数

    我正在尝试将 jquery 中的字符串数组转换为整数数组 这是我的尝试 var cdata data values split each cdata function i l l parseInt l 我认为在这种情况下你不需要使用 Jqu
  • 如何从顺序键盘导航中删除 Vuetify 附加图标

    在带有 Vuetify 的 Vue js 应用程序中 我有一组用v text field并且其中有一个append icon为了切换文本可见性 如下所示
  • 如何访问另一个 mobx 商店中的 mobx 商店?

    假设以下结构 stores RouterStore js UserStore js index js each of Store jsfiles 是一个 mobx 存储类 包含 observable and action index js只
  • 如何将 Browserify 与外部依赖项一起使用?

    我正在尝试慢慢地将 Browserify 引入我的网站 但我不想重写所有 js 也不希望 jquery 和其他库的重复实例与我的 Browserify 版本捆绑在一起 如果我构建将 jquery 列为外部依赖项的模块 那么如何将其指向我的全
  • Jquery,清除/清空 tbody 元素的所有内容?

    我认为这会相当简单 但似乎空方法无法清除我拥有的 tbody 如果有人知道执行此操作的正确方法 我将不胜感激 我只想删除 tbody 中包含的所有内容 到目前为止我正在尝试 tbodyid empty HTML table tbody tr
  • window.showModalDialog 的等效跨浏览器解决方案是什么?

    window showModalDialog 的等效跨浏览器解决方案有哪些 showModalDialog 在 IE 和 FF 3 中引入 我个人认为没有 但是有很多 UI 工具包提供了这样的功能 例如jQuery UI http jque
  • React Native - 跨屏幕传递数据

    我遇到了一些麻烦react native应用程序 我不知道如何跨屏幕传递数据 我意识到还有其他类似的问题在 SO 上得到了回答 但是这些解决方案对我来说不起作用 我正在使用StackNavigator 这是我的设置App js file e
  • FormsAuthentication:安全吗?

    Using 表单验证构建成asp net创建一个为经过身份验证的用户创建 cookie 的登录系统非常快速且简单 FormsAuthentication SetAuthCookie uniqueUsername false 与中的一些代码配
  • 如何调试 Gulp 任务?

    如何调试我的中定义的 gulp 任务gulpfile js使用诸如 Google Chrome 调试器之类的调试器逐行单步执行任务的代码 对于 Node js 6 3 版本 您可以使用 inspect flag https nodejs o

随机推荐

  • 配置文件不包括签名证书

    我已将 Xcode 更新到 8 因为我无法运行我的项目 我尝试启用 禁用 自动管理签名 选项 但不断收到 2 个警报 您的应用程序 ID 无法注册到您的开发团队 配置文件 不包括签名证书 我的签名证书 我是我们开发人员门户上的团队代理 我可
  • 如何在 Angular 中将标签与其外部的表单字段关联起来?

    假设我正在 ngFor 循环中创建标签和表单字段 如下所示 应用程序组件 ts export class AppComponent items aaa bbbbbb ccccccccc 应用程序组件 html div class form
  • Xcode 看不到我的 iOS 设备,但 iTunes 可以

    我有一个奇怪的问题 我的 Mac 上安装了装有 iOS 5 0 1 9A405 的 iPad 和 iOS SDK 5 0 1 以及 Xcode 4 2 Build 4C199 Xcode 看不到我的设备 它像往常一样说 iOS设备 而不是
  • Kafka Streams.allMetadata() 方法返回空列表

    所以我正在尝试使用 Kafka 流进行交互式查询 我有 Zookeeper 和 Kafka 在本地运行 在 Windows 上 我使用 C temp 作为 Zookeeper 和 Kafka 的存储文件夹 我已经设置了这样的主题 kafka
  • 在 Flutter 中更新下拉数据出现错误

    我正在开发一个小部件 其中包含dropdownbutton在颤振中 该小部件创建dropdownmenuitems向用户传入的 url 发出请求后 我已经看到正在拨打的电话和有效的响应 但是当我使用setState要更新下拉列表的数据源 我
  • 你能从 lua 修改 C 结构体吗?

    我希望能够拥有这个 Lua 代码 function myfunc s print s value s value 7 end 它应该适用于以下 C 代码 struct MyStruct float value void func MyStr
  • Func 委托中的 out 参数修饰符 (C#)

    我是 C 的初学者 只是一个关于 Func delegate 的问题 public delegate TResult Func
  • angularjs:在 ui-bootstrap 模式中使用指令

    我不知道如何从使用 dialog 服务创建的模式中调用指令 该指令还应该能够看到模式上的按钮并覆盖它们的 ng click 操作 这是我的模态模板 div class modal header h1 Rechercher h1 div di
  • 如何为Apple Watch添加加载视图?

    我想在按下 WKInterfaceButton 后显示加载视图 苹果提供的视图 我需要这个 因为按下 WKInterface 按钮后 我将调用主 iPhone 应用程序来执行一些服务调用 这将需要一些时间才能返回响应 WKInterface
  • 从 Visual Studio 2012 签入 TFS 后,所有文件都标记为只读

    我有两个项目的解决方案 我刚刚标记了解决方案并签入了它 现在所有文件的左侧都有蓝色挂锁的小图像 这显然意味着它们被标记为只读 到目前为止 我一直只使用 Tortoise SVN 这是我第一次签入 TFS 那么为什么会发生这种情况 或者如果这
  • 防止TinyMCE删除span元素

    这是问题演示 你可以在这里尝试一下 http fiddle tinymce com SLcaab http fiddle tinymce com SLcaab 这是TinyMCE默认配置 减去所有插件 使用扩展有效元素 跨度 1 打开 Ht
  • 如何在 Linux 和 Solaris 上编译 C?

    我想制作一个可以在 Linux 和 Solaris 中编译的 Makefile 我知道如何单独执行此操作 但如何将两者结合起来并能够检测我正在使用哪种操作系统 我试图仅对一个简单的 C 文件执行此操作 但更改的是编译器的名称 GNU Aut
  • 在 C++ 中,编译器“内联”函数对象意味着什么?

    在维基百科中它表示此类对象与 for each 一起使用时具有性能优势 因为编译器可以 内联 它们 我对这在这种情况下的确切含义有点模糊 或者在我不好意思说的任何情况下 谢谢你的帮助 最后一个参数为for each模板是一个functor
  • iOS 12 在 QuickType 栏中建议电话号码

    Lyft 如何在 QuickType 栏中建议我的电话号码 以便我无需手动输入 我知道 Apple 在 iOS 12 中引入了自动填充用户名 密码 安全代码等功能 看起来此电话号码建议可能使用类似的功能 但我不知道如何让我的任何应用程序建议
  • http://schema.openid.net/contact/email 和 http://axschema.org/contact/email 之间的区别

    何时使用http schema openid net contact email http schema openid net contact email以及何时使用http axschema org contact email http
  • 捕获信号:使用成员函数作为信号处理程序

    我有一个对象在无限循环中执行一些工作 这main 实例化该对象并调用run 方法 由于我不想使用线程 因此我需要一个解决方案来使我的对象停止运行 下面你就可以看到我的想法了 struct Foo void run running 1 whi
  • 如何使用 C# 启动或停止远程计算机中的 IIS 和 Windows 服务

    这段代码出现异常 尽管我在远程计算机上拥有管理员权限 class Program static void Main string args var sc new System ServiceProcess ServiceController
  • Docker 在构建时组成缺失的纱线依赖项

    在Dockerfile中运行yarn install时无法获取node modules文件夹 test sof docker compose yml Dockerfile package json yarn lock docker comp
  • HTTP 错误 503。该服务在简单的 ASP.NET 4.0 网站下不可用 [关闭]

    Closed 这个问题是与编程或软件开发无关 help closed questions 目前不接受答案 我的本地笔记本电脑上发生了一些奇怪的事情 我在本地工作了很长时间的网站没有启动 为了解决这个问题 我创建了一个仅包含 index ht
  • AngularJS 会忽略 HTTP 标头中的 Set-Cookie

    我正在开发一个基于客户端 AngularJS 和服务器端 API Tomcat Jersey for WS 的 Java 应用程序 我的API的某些路径受到限制 如果用户没有会话 则返回的响应状态为401 在客户端 401 http状态被拦