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

会话奇怪地返回null

臧兴学
2023-03-14

我将数据保存到会话中,但是我尝试将其读回,结果为空。Spring MVC是我的后端,Angular 4是前端。

爪哇:

@RestController
@CrossOrigin(origins = "http://localhost:3009", allowCredentials = "true")
@RequestMapping(value = "api")
public class RestController {

@Autowired
MainLogic mainLogic;

@RequestMapping(value = "/data", method = RequestMethod.GET)
public List<Data> getData(HttpServletRequest httpServletRequest){

    // user is null here )-:
    User user = (User)httpServletRequest.getSession().getAttribute("user");

    if (user == null) {
        return null;
    }

    return mainLogic.getData();
}

@RequestMapping(value = "/login", method = RequestMethod.POST)
public LoginResult logIn(HttpServletRequest httpServletRequest, @RequestParam("username") String username, @RequestParam("password") String password){

    LoginResult result = mainLogic.logIn(username, password);

    if (result.getUser() != null) {
    // user is not null here
        httpServletRequest.getSession().setAttribute("user", result.getUser());
    }

    return result;
}
}

角:

logIn(username: string, password: string): Observable<LoginResult>{
    let result = this.http
      .post(`${this.baseUrl}/login?username=${username}&password=${password}` , {headers: configuration.getHeaders(), withCredentials: true})
      .map(response => response.json());

    return result;
  }

getData(): Observable<Affiliate[]>{
    let results = this.http
      .get(`${this.baseUrl}/data`, {headers: configuration.getHeaders(), withCredentials: true})
      .map(response => response.json());

    return results;
  }

你知道我错过了什么吗?也许是CORS的事?

共有1个答案

公羊玉泽
2023-03-14

您能检查cookies是否已启用吗?

 类似资料:
  • 问题内容: 有没有人看到像这样的方法签名后放置的数组? 版画 过去,“ C”兼容性是一种奇怪的表示法,但我也无法想象有人用C编写这种代码。 有谁知道为什么甚至允许这样做? 如果有问题,我正在使用Java 7 update 10。 这与Java 6中的功能相同。http://ideone.com/91rZV1 顺便说一句,这不会编译,我也不希望它编译 问题答案: 有谁知道为什么甚至允许这样做? 在这

  • 但是,当从handleAsyncErrors()流链接ObjectNode并到达相同的httpCallbackFlow()时,我们会得到一个异常,该异常由 restClientException:无法写入请求:在org.springframework.web.client.restTemplate$HttpEntityRequestCallback.dowithRequest(restTempla

  • 我有以下控制器: 重启控制器。爪哇 我已经使用mockMvc对web层进行了测试,用户服务bean按照标准进行了模拟: 重启控制器监控测试。爪哇 test正在返回404而不是200状态,并且没有返回正文中的错误消息,这暗指404不是“真正的”404(它没有返回,因为正确的响应正在返回,它返回是因为其他原因)。我还认为其他404状态中的一些可能会在相同的上下文中返回。

  • 问题内容: 尝试这段代码。为什么getValueB()返回1而不是2?毕竟,递增两次被调用两次。 问题答案: 毕竟,递增两次被调用两次。 是的,但是返回值是 在 第二次调用 之前 确定的。 返回的值由该 时间点在 return语句中的表达式求值确定,而不是“仅在执行离开方法之前”。 从JLS的14.17节开始: 一个带有Expression的return语句试图将控制权转移到包含它的方法的调用者;

  • 输入df。mean() 输出: 输入 (正确)输出: “a”中的类型值col=int 其他col具有str值 为什么会发生这种情况

  • 我正在iOS上构建一个小应用程序,使用Spotify SDK向其Web Api发出请求。问题是,我正在使用函数每当我想提出请求时,都可以续订令牌。但是对于该函数,文档中说“如果没有指定令牌刷新服务,回调将返回nil作为会话”。这就是发生在我身上的事。我总是得到一个零“续费期”(https://developer.spotify.com/ios-sdk-docs/Documents/Classes/