欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java?web項(xiàng)目Session獲取不到問題及解決

 更新時(shí)間:2022年01月12日 14:33:49   作者:shiGuang°  
這篇文章主要介紹了java?web項(xiàng)目Session獲取不到問題及解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

java web項(xiàng)目Session獲取不到

在servlet類中對Session進(jìn)行了設(shè)置 但當(dāng)servlet跳轉(zhuǎn)到頁面時(shí) 頁面獲取不到Session?。?!

關(guān)于session的生命周期

Session保存在服務(wù)器端。Session在用戶第一次訪問服務(wù)器的時(shí)候自動創(chuàng)建。需要注意只有訪問JSP、Servlet等程序時(shí)才會創(chuàng)建Session,只訪問HTML、IMAGE等靜態(tài)資源并不會創(chuàng)建Session。如果尚未生成Session,也可以使用request.getSession(true)強(qiáng)制生成Session。

而我們在頁面獲取不到Seesion的原因可能是:瀏覽器禁用了Cookie

使用url地址重寫即可解決!

  • response.encodeRedirectURL(url)用于對sendRedirect方法后的url地址進(jìn)行重寫。
  • response.encodeURL(url)用于對表單action和超鏈接的url地址進(jìn)行重寫
String url=response.encodeRedirectURL("url");
response.sendRedirect(url);

這樣在頁面中即可使用

<%=request.getSession().getAttribute("key")%>

來獲取我們存儲的Seesion!??!

前后端分離獲取不到session問題

前后端分離的項(xiàng)目,前端是vue,后端springboot,或者maven項(xiàng)目,生成驗(yàn)證碼的時(shí)候存了一份到session并存到redis里,前端調(diào)后臺注冊獲取不到session,但當(dāng)用戶從session中取信息的時(shí)候發(fā)現(xiàn)始終取不到,每次跨域請求時(shí)ajax發(fā)送的都是新的sessionid,導(dǎo)致無法獲取信息

解決方案

前端在vue的main文件全局添加一下代碼:

import axios from 'axios';
axios.defaults.withCredentials=true;

后臺新增一個過濾器

web.xml文件

<filter>
?? ?<filter-name>contextFilter</filter-name>
?? ?<filter-class>com.zl.filter.ContextFilter</filter-class>
</filter>
<filter-mapping>
?? ?<filter-name>contextFilter</filter-name>
?? ?<url-pattern>/*</url-pattern>
</filter-mapping>
public class ContextFilter implements Filter {
? ? @Override
? ? public void init(FilterConfig filterConfig) throws ServletException {
? ? }
? ? @Override
? ? public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
? ? ? ? HttpServletResponse response = (HttpServletResponse)servletResponse;
? ? ? ? HttpServletRequest request = (HttpServletRequest)servletRequest;
? ? ? ? String origin = request.getHeader("Origin");
? ? ? ? response.setHeader("Access-Control-Allow-Origin", origin);
? ? ? ? response.setHeader("Access-Control-Allow-Methods", "*");
? ? ? ? String headers = request.getHeader("Access-Control-Request-Headers");
? ? ? ? ?// 支持所有自定義頭
? ? ? ? if (!org.springframework.util.StringUtils.isEmpty(headers)) {
? ? ? ? ? ? response.setHeader("Access-Control-Allow-Headers", headers);
? ? ? ? }
? ? ? ? response.setHeader("Access-Control-Allow-Credentials", "true");
? ? ? ? response.setHeader("Access-Control-Max-Age", "3600");
? ? ? ? filterChain.doFilter(request, response);
? ? }
? ? @Override
? ? public void destroy() {
? ? }
}

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringBoot2之PUT請求接收不了參數(shù)的解決方案

    SpringBoot2之PUT請求接收不了參數(shù)的解決方案

    這篇文章主要介紹了SpringBoot2之PUT請求接收不了參數(shù)的解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • Vue3源碼解讀effectScope API及實(shí)現(xiàn)原理

    Vue3源碼解讀effectScope API及實(shí)現(xiàn)原理

    這篇文章主要為大家介紹了Vue3源碼解讀effectScope API及實(shí)現(xiàn)原理,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03
  • Kryo框架使用方法代碼示例

    Kryo框架使用方法代碼示例

    這篇文章主要介紹了Kryo框架的相關(guān)內(nèi)容,文中向大家分享了Kryo框架使用方法代碼示例,小編覺得挺不錯的,希望能給大家一個參考。
    2017-10-10
  • Spring MVC 更靈活的控制 json 返回問題(自定義過濾字段)

    Spring MVC 更靈活的控制 json 返回問題(自定義過濾字段)

    本篇文章主要介紹了Spring MVC 更靈活的控制 json 返回問題(自定義過濾字段),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。
    2017-02-02
  • Java語言的11大特點(diǎn)(Java初學(xué)者必知)

    Java語言的11大特點(diǎn)(Java初學(xué)者必知)

    Java是一種簡單的,面向?qū)ο蟮?,分布式的,解釋型的,健壯安全的,結(jié)構(gòu)中立的,可移植的,性能優(yōu)異、多線程的靜態(tài)語言。這篇文章主要介紹了Java語言的11大特點(diǎn),需要的朋友可以參考下
    2020-07-07
  • 簡單談?wù)凧ava中的方法和方法重載

    簡單談?wù)凧ava中的方法和方法重載

    下面小編就為大家?guī)硪黄唵握務(wù)凧ava中的方法和方法重載。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • 基于Jenkins自動打包并部署docker環(huán)境的操作過程

    基于Jenkins自動打包并部署docker環(huán)境的操作過程

    這篇文章主要介紹了基于Jenkins自動打包并部署docker環(huán)境,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-08-08
  • Java基礎(chǔ)之初識Maven

    Java基礎(chǔ)之初識Maven

    這篇文章主要介紹了Java基礎(chǔ)之初識Maven,文中有非常詳細(xì)的代碼示例,對正在學(xué)習(xí)java基礎(chǔ)的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-05-05
  • SpringBoot實(shí)現(xiàn)定時(shí)任務(wù)和異步調(diào)用

    SpringBoot實(shí)現(xiàn)定時(shí)任務(wù)和異步調(diào)用

    這篇文章主要為大家詳細(xì)介紹了SpringBoot實(shí)現(xiàn)定時(shí)任務(wù)和異步調(diào)用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • Java Vector類詳解及實(shí)例代碼

    Java Vector類詳解及實(shí)例代碼

    這篇文章主要介紹了Java Vector類詳解及實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下
    2017-01-01

最新評論