当前位置: 首页 > 知识库问答 >
问题:

保持会话cookie为角4.3

皇甫展
2023-03-14

我正在尝试验证Spring启动后端并获取一些数据

this.http.get(`${this.configService.api}user`, {
        headers: new HttpHeaders().set('Authorization', "Basic " + btoa(user.login + ":" + user.password)),
      }).toPromise().then(resp => {
        this.http.get(`${this.configService.api}projects`).toPromise();

身份验证工作正常。以下是响应标题:

HTTP/1.1 200
Access-Control-Allow-Origin: http://localhost:4200
Vary: Origin
Access-Control-Allow-Credentials: true
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Set-Cookie: JSESSIONID=5C698E29D0DD942ED36AF2D93287B03B; Path=/; HttpOnly
Content-Type: application/json;charset=UTF-8
Transfer-Encoding: chunked
Date: Wed, 16 Aug 2017 04:02:42 GMT

然后我试着从Spring启动中获取项目。这是我的HTTP GET的标题:

GET /user HTTP/1.1
Host: localhost:8080
Connection: keep-alive
Accept: application/json, text/plain, */*
Origin: http://localhost:4200
Authorization: Basic dXNlcjpwYXNzd29yZA==
User-Agent: Mozilla/5.0 ...
DNT: 1
Referer: http://localhost:4200/auth
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.8,fr;q=0.6

它不使用会话cookie,因此会抛出一个错误,说没有标识。

如何使用angular 4.3解决此问题?

共有1个答案

姚洲
2023-03-14

如果您正在使用Angular 4.3中新的HttpClient模块,是否尝试在第二个(选项)参数中将withCredentials设置为true

constructor(private http: HttpClient) {

  this.http.get('/my/resource/url', {withCredentials: true})
    .subscribe(result => {
      ...
    });

}

资料来源:https://angular.io/api/common/http/HttpClient#get

 类似资料:
  • 问题内容: 如何使 connect.sid cookie本身仅是会话cookie,而不是持久性cookie? 我尝试失败 但是cookie仍具有到期时间戳。 问题答案: 以上工作。因此,通过将maxAge设置为null,我确实管理了expressjs以使用会话cookie。ew

  • 问题内容: 我几个月前开始使用PHP。为了为我的网站创建一个登录系统,我阅读了有关cookie和会话及其区别(cookie存储在用户的浏览器中以及服务器上的会话中)的信息。当时,我更喜欢cookie(谁不喜欢cookie ?!),只是说:“谁在乎?我在将它存储在服务器中没有任何好处”,所以,我继续使用cookie我的学士毕业项目。但是,在完成了我的应用程序的大部分工作之后,我听说对于存储用户ID的

  • 问题内容: 我的项目架构是带有Spring集成和JPA / Hibernate的Struts2。StrutsSpringTestCase基类用于JUnit集成测试。 在正常情况下,web.xml中的以下配置从每个请求的开始到结束都保持单个会话打开: 结果,所有延迟加载都可以在所有服务中正常工作。例如: 现在…当我尝试运行集成测试时会出现问题,这些测试独立于web.xml中的OpenEntityMa

  • 嗨,我目前正在开发一个Android应用程序,该应用程序使用改进型来拨打网络电话。下面是关于我的需求的基本概述。

  • 问题内容: 我正在尝试使用Selenium Web驱动程序和node js自动执行几个页面。我可以登录,但是登录后我想使用由Web驱动程序启动的同一会话,以便可以在受会话保护的页面上进行自动测试。这是我的尝试 登录后我不小心丢弃了浏览器吗? 问题答案: 您可能只在处理计时问题。硒移动 非常快 。比您作为用户进行交互的方式要快得多。因此,它通常以似乎无法预测的方式起作用。但这仅仅是因为Seleniu

  • 我正在构建一个反向代理服务器,它将授权http请求并将其传递给一些内部API。 我根据DB中的条目授权传入请求。 这个项目中的性能是优先的——反向代理服务器不应该增加太多响应时间。 简而言之: 我正在使用来查询数据库。我在Spring配置中的init期间打开Hibernate会话: 然后我将会话注入DAO层,并在read方法中使用它: 正如您所看到的,我并不是在每次DAO调用中都关闭/打开会话。我