??工作中遇到這樣一個(gè)場(chǎng)景:遠(yuǎn)程調(diào)用某個(gè)接口,該接口需要用戶的
Cookie
信息進(jìn)行權(quán)限認(rèn)證,認(rèn)證通過之后才可以打通并返回?cái)?shù)據(jù)。
在后端拿到 httpServletRequest
后,調(diào)用 getCookies()
方法,返回的是一個(gè) Cookie
類型的數(shù)組。Debug 過程中拿到的 cookie
數(shù)據(jù)結(jié)構(gòu)如下所示:
因此,需要將數(shù)組格式轉(zhuǎn)換為字符串形式,核心代碼如下:
private String getCookies(HttpServletRequest request) {
try {
Cookie[] cookies = request.getCookies();
// 將Cookie對(duì)象數(shù)組轉(zhuǎn)換成字符串形式的Cookie
if (!CoreTool.isEmpty(cookies)) {
// 使用數(shù)組流處理
return Arrays.stream(cookies)
.map(cookie -> cookie.getName() + "=" + cookie.getValue())
.collect(Collectors.joining("; "));
}
} catch (Exception e) {
LOGGER.error("獲取cookie異常", e);
}
return "";
}
類型轉(zhuǎn)換后返回一個(gè)字符串格式的 cookie,其內(nèi)容和在網(wǎng)頁(yè)端看到的 cookie 內(nèi)容一致,處理后的 cookie 具體內(nèi)容以及截圖如下:文章來源:http://www.zghlxwxcb.cn/news/detail-681310.html
sensorsdata2015jssdkcross=%7B%22distinct_id%22%3A%22KQm5bczi%22%2C%22first_id%22%3A%22184e11a69c8129e-09ca8d731cb9b28-26021851-1327104-184e11a69c9128b%22%2C%22props%22%3A%7B%22%24latest_traffic_source_type%22%3A%22%E7%9B%B4%E6%8E%A5%E6%B5%81%E9%87%8F%22%2C%22%24latest_search_keyword%22%3A%22%E6%9C%AA%E5%8F%96%E5%88%B0%E5%80%BC_%E7%9B%B4%E6%8E%A5%E6%89%93%E5%BC%80%22%2C%22%24latest_referrer%22%3A%22%22%7D%2C%22identities%22%3A%22eyIkaWRlbnRpdHlfbG9naW5faWQiOiJLUW01YmN6aSIsIiRpZGVudGl0eV9jb29raWVfaWQiOiIxODRlMTFhNjljODEyOWUtMDljYThkNzMxY2I5YjI4LTI2MDIxODUxLTEzMjcxMDQtMTg0ZTExYTY5YzkxMjhiIn0%3D%22%2C%22history_login_id%22%3A%7B%22name%22%3A%22%24identity_login_id%22%2C%22value%22%3A%22KQm5bczi%22%7D%2C%22%24device_id%22%3A%22184e11a69c8129e-09ca8d731cb9b28-26021851-1327104-184e11a69c9128b%22%7D; sso-token=eyJhbGciOiJIUzI1NiJ9.eyJkZXBhcnRtZW50TmFtZSI6IuWfuuehgOW5s-WPsOe7hCIsImNsaWVudElkIjpudWxsLCJkVXNlcklkIjoiMTgwODI4MTgyMzM3NjEzMzIxIiwidXNlckFjY291bnQiOiJTQzg2MDQiLCJ1c2VyUGhvbmUiOiIxMzU1Mjg2NjY4NSIsImRlcGFydG1lbnRDb2RlIjoiMDI0NTA1MDEiLCJwYXJ0RGVwYXJ0bWVudExpc3QiOm51bGwsInVzZXJFbWFpbCI6Inpob25naHVhLmNoZW5Ad2JzdGFyLmNvbSIsInVzZXJOYW1lIjoi6ZmI5Lit5Y2OIiwiZXhwIjoxNjkzNDgzNTUwLCJ1c2VySWQiOiIzODE3ZmQ5Ni05Y2U5LTRkY2UtODUzMi0wMDNjYzE0YTRkMzcifQ.iRnQquAVvzfJtAX6AUtQGpMe94xLr0bG4EIdykC9idI
文章來源地址http://www.zghlxwxcb.cn/news/detail-681310.html
到了這里,關(guān)于【已解決】Java 后端使用數(shù)組流 Array.stream() 將數(shù)組格式的 Cookie 轉(zhuǎn)換成字符串格式的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!