日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

用redis+jwt保存在线用户和获得在线用户列表、踢出用户示例

發布時間:2024/9/30 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用redis+jwt保存在线用户和获得在线用户列表、踢出用户示例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • redis工具類
  • 用戶實體類
  • token配置
  • service層保存和查詢在線用戶
  • 工具類 獲得用戶瀏覽器等其他信息
  • controller層

redis工具類

import org.springframework.data.redis.connection.RedisConnection; import org.springframework.data.redis.connection.RedisConnectionFactory; import org.springframework.data.redis.core.Cursor; import org.springframework.data.redis.core.RedisConnectionUtils; @Component @SuppressWarnings({"unchecked", "all"}) public class RedisUtils {private RedisTemplate<Object, Object> redisTemplate;@Value("${jwt.online-key}")private String onlineKey;public RedisUtils(RedisTemplate<Object, Object> redisTemplate) {this.redisTemplate = redisTemplate;}/*** 根據 key 獲取過期時間* @param key 鍵 不能為null* @return 時間(秒) 返回0代表為永久有效*/public long getExpire(Object key) {return redisTemplate.getExpire(key, TimeUnit.SECONDS);}/*** 查找匹配key* @param pattern key* @return /*/public List<String> scan(String pattern) {ScanOptions options = ScanOptions.scanOptions().match(pattern).build();RedisConnectionFactory factory = redisTemplate.getConnectionFactory();RedisConnection rc = Objects.requireNonNull(factory).getConnection();Cursor<byte[]> cursor = rc.scan(options);List<String> result = new ArrayList<>();while (cursor.hasNext()) {result.add(new String(cursor.next()));}try {RedisConnectionUtils.releaseConnection(rc, factory);} catch (Exception e) {e.printStackTrace();}return result;}/*** 分頁查詢 key* @param patternKey key* @param page 頁碼* @param size 每頁數目* @return /*/public List<String> findKeysForPage(String patternKey, int page, int size) {ScanOptions options = ScanOptions.scanOptions().match(patternKey).build();RedisConnectionFactory factory = redisTemplate.getConnectionFactory();RedisConnection rc = Objects.requireNonNull(factory).getConnection();Cursor<byte[]> cursor = rc.scan(options);List<String> result = new ArrayList<>(size);int tmpIndex = 0;int fromIndex = page * size;int toIndex = page * size + size;while (cursor.hasNext()) {if (tmpIndex >= fromIndex && tmpIndex < toIndex) {result.add(new String(cursor.next()));tmpIndex++;continue;}// 獲取到滿足條件的數據后,就可以退出了if (tmpIndex >= toIndex) {break;}tmpIndex++;cursor.next();}try {RedisConnectionUtils.releaseConnection(rc, factory);} catch (Exception e) {e.printStackTrace();}return result;}/*** 判斷key是否存在* @param key 鍵* @return true 存在 false不存在*/public boolean hasKey(String key) {try {return redisTemplate.hasKey(key);} catch (Exception e) {e.printStackTrace();return false;}}/*** 刪除緩存* @param key 可以傳一個值 或多個*/public void del(String... key) {if (key != null && key.length > 0) {if (key.length == 1) {redisTemplate.delete(key[0]);} else {redisTemplate.delete(CollectionUtils.arrayToList(key));}}}/*** 普通緩存獲取* @param key 鍵* @return 值*/public Object get(String key) {return key == null ? null : redisTemplate.opsForValue().get(key);}/*** 批量獲取* @param keys* @return*/public List<Object> multiGet(List<String> keys) {Object obj = redisTemplate.opsForValue().multiGet(Collections.singleton(keys));return null;}/*** 普通緩存放入* @param key 鍵* @param value 值* @return true成功 false失敗*/public boolean set(String key, Object value) {try {redisTemplate.opsForValue().set(key, value);return true;} catch (Exception e) {e.printStackTrace();return false;}}/*** 普通緩存放入并設置時間* @param key 鍵* @param value 值* @param time 時間(秒) time要大于0 如果time小于等于0 將設置無限期* @return true成功 false 失敗*/public boolean set(String key, Object value, long time) {try {if (time > 0) {redisTemplate.opsForValue().set(key, value, time, TimeUnit.SECONDS);} else {set(key, value);}return true;} catch (Exception e) {e.printStackTrace();return false;}}/*** 普通緩存放入并設置時間* @param key 鍵* @param value 值* @param time 時間* @param timeUnit 類型* @return true成功 false 失敗*/public boolean set(String key, Object value, long time, TimeUnit timeUnit) {try {if (time > 0) {redisTemplate.opsForValue().set(key, value, time, timeUnit);} else {set(key, value);}return true;} catch (Exception e) {e.printStackTrace();return false;}}//省略其他操作map的方法 }

用戶實體類

@Data @AllArgsConstructor @NoArgsConstructor public class OnlineUser {private String userName;private String nickName;private String job;private String browser;private String ip;private String address;private String key;private Date loginTime;}

token配置

securityproerties:

@Data @Configuration(proxyBeanMethods = false) @ConfigurationProperties(prefix = "jwt") public class SecurityProperties {/** Request Headers : Authorization */private String header;/** 令牌前綴,最后留個空格 Bearer */private String tokenStartWith;/** 必須使用最少88位的Base64對該令牌進行編碼 */private String base64Secret;private String secret;/** 令牌過期時間 此處單位/毫秒 */private Long tokenValidityInSeconds;/** 在線用戶 key,根據 key 查詢 redis 中在線用戶的數據 */private String onlineKey;/** 驗證碼 key */private String codeKey;public String getTokenStartWith() {return tokenStartWith + " ";} }

其中Yml配置:

#jwt jwt:header: Authorization# 令牌前綴token-start-with: Bearersecret: k09BQnaF# 必須使用最少88位的Base64對該令牌進行編碼base64-secret: ZmQ0ZGI5NjQ0MDQwY2I4MjMxY2Y3ZmI3MjdhN2ZmMjNhODViOTg1ZGE0NTBjMGM4NDA5NzYxMjdjOWMwYWRmZTBlZjlhNGY3ZTg4Y2U3YTE1ODVkZDU5Y2Y3OGYwZWE1NzUzNWQ2YjFjZDc0NGMxZWU2MmQ3MjY1NzJmNTE0MzI=# 令牌過期時間 此處單位/毫秒 ,默認4小時,可在此網站生成 https://www.convertworld.com/zh-hans/time/milliseconds.htmltoken-validity-in-seconds: 14400000# 在線用戶keyonline-key: online-token# 驗證碼code-key: code-key

service層保存和查詢在線用戶

在線用戶層

@Service @Slf4j public class OnlineUserService {private final SecurityProperties properties;//這個特性類的屬性在上面private RedisUtils redisUtils;public OnlineUserService(SecurityProperties properties, RedisUtils redisUtils) {this.properties = properties;this.redisUtils = redisUtils;}/*** 保存在線用戶信息* @param jwtUser /* @param token /* @param request /*/public void save(JwtUser jwtUser, String token, HttpServletRequest request) {String job = jwtUser.getDept() + "/" + jwtUser.getJob();String ip = StringUtils.getIp(request);String browser = StringUtils.getBrowser(request);String address = StringUtils.getCityInfo(ip);OnlineUser onlineUser = null;try {onlineUser = new OnlineUser(jwtUser.getUsername(), jwtUser.getNickName(), job, browser, ip, address, EncryptUtils.desEncrypt(token), new Date());} catch (Exception e) {e.printStackTrace();}redisUtils.set(properties.getOnlineKey() + token, onlineUser, properties.getTokenValidityInSeconds() / 1000);}/*** 查詢全部數據 分頁* @param filter /* @param pageable /* @return /*/public Map<String, Object> getAll(String filter, int type, Pageable pageable) {List<OnlineUser> onlineUsers = getAll(filter, type);return PageUtil.toPage(PageUtil.toPage(pageable.getPageNumber(), pageable.getPageSize(), onlineUsers),onlineUsers.size());}/*** 查詢全部數據,不分頁* @param filter /* @return /*/public List<OnlineUser> getAll(String filter, int type) {List<String> keys = null;if (type == 1) {keys = redisUtils.scan("m-online-token*");} else {keys = redisUtils.scan(properties.getOnlineKey() + "*");}Collections.reverse(keys);List<OnlineUser> onlineUsers = new ArrayList<>();for (String key : keys) {OnlineUser onlineUser = (OnlineUser) redisUtils.get(key);if (StringUtils.isNotBlank(filter)) {if (onlineUser.toString().contains(filter)) {onlineUsers.add(onlineUser);}} else {onlineUsers.add(onlineUser);}}onlineUsers.sort((o1, o2) -> o2.getLoginTime().compareTo(o1.getLoginTime()));return onlineUsers;}/*** 踢出用戶* @param key /* @throws Exception /*/public void kickOut(String key) throws Exception {key = properties.getOnlineKey() + EncryptUtils.desDecrypt(key);redisUtils.del(key);}/*** 踢出移動端用戶* @param key /* @throws Exception /*/public void kickOutT(String key) throws Exception {String keyt = "m-online-token" + EncryptUtils.desDecrypt(key);redisUtils.del(keyt);}/*** 退出登錄* @param token /*/public void logout(String token) {String key = properties.getOnlineKey() + token;redisUtils.del(key);}/*** 檢測用戶是否在之前已經登錄,已經登錄踢下線* @param userName 用戶名*/public void checkLoginOnUser(String userName, String igoreToken) {List<OnlineUser> onlineUsers = getAll(userName, 0);if (onlineUsers == null || onlineUsers.isEmpty()) {return;}for (OnlineUser onlineUser : onlineUsers) {if (onlineUser.getUserName().equals(userName)) {try {String token = EncryptUtils.desDecrypt(onlineUser.getKey());if (StringUtils.isNotBlank(igoreToken) && !igoreToken.equals(token)) {this.kickOut(onlineUser.getKey());} else if (StringUtils.isBlank(igoreToken)) {this.kickOut(onlineUser.getKey());}} catch (Exception e) {log.error("checkUser is error", e);}}}}}

工具類 獲得用戶瀏覽器等其他信息

上面的StringUtils工具類有一些獲取信息的方法:

import cn.hutool.http.HttpUtil; import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; import eu.bitwalker.useragentutils.Browser; import eu.bitwalker.useragentutils.UserAgent;import javax.servlet.http.HttpServletRequest; import java.net.InetAddress; import java.net.UnknownHostException; import java.util.Calendar; import java.util.Date; public class StringUtils extends org.apache.commons.lang3.StringUtils {/*** 獲取ip地址*/public static String getIp(HttpServletRequest request) {String ip = request.getHeader("x-forwarded-for");if (ip == null || ip.length() == 0 || UNKNOWN.equalsIgnoreCase(ip)) {ip = request.getHeader("Proxy-Client-IP");}if (ip == null || ip.length() == 0 || UNKNOWN.equalsIgnoreCase(ip)) {ip = request.getHeader("WL-Proxy-Client-IP");}if (ip == null || ip.length() == 0 || UNKNOWN.equalsIgnoreCase(ip)) {ip = request.getRemoteAddr();}String comma = ",";String localhost = "127.0.0.1";if (ip.contains(comma)) {ip = ip.split(",")[0];}if (localhost.equals(ip)) {// 獲取本機真正的ip地址try {ip = InetAddress.getLocalHost().getHostAddress();} catch (UnknownHostException e) {e.printStackTrace();}}return ip;}/*** 根據ip獲取詳細地址*/public static String getCityInfo(String ip) {String api = String.format(YshopConstant.Url.IP_URL, ip);JSONObject object = JSONUtil.parseObj(HttpUtil.get(api));return object.get("addr", String.class);}//獲取用戶瀏覽器名字public static String getBrowser(HttpServletRequest request) {UserAgent userAgent = UserAgent.parseUserAgentString(request.getHeader("User-Agent"));Browser browser = userAgent.getBrowser();return browser.getName();}/*** 獲得當天是周幾*/public static String getWeekDay() {String[] weekDays = {"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"};Calendar cal = Calendar.getInstance();cal.setTime(new Date());int w = cal.get(Calendar.DAY_OF_WEEK) - 1;if (w < 0) {w = 0;}return weekDays[w];} }

controller層

@RestController @RequestMapping("/auth/online") @Api(tags = "系統:在線用戶管理") public class OnlineController {private final OnlineUserService onlineUserService;public OnlineController(OnlineUserService onlineUserService) {this.onlineUserService = onlineUserService;}@ApiOperation("查詢在線用戶")@GetMapping@PreAuthorize("@el.check()")public ResponseEntity<Object> getAll(@RequestParam(value = "filter", defaultValue = "") String filter,@RequestParam(value = "type", defaultValue = "0") int type,Pageable pageable) {return new ResponseEntity<>(onlineUserService.getAll(filter, type, pageable), HttpStatus.OK);}@ApiOperation("踢出用戶")@DeleteMapping@PreAuthorize("@el.check()")public ResponseEntity<Object> delete(@RequestBody Set<String> keys) throws Exception {for (String key : keys) {onlineUserService.kickOut(key);}return new ResponseEntity<>(HttpStatus.OK);}@ForbidSubmit@ApiOperation("踢出移動端用戶")@PostMapping("/delete")@PreAuthorize("@el.check()")public ResponseEntity<Object> deletet(@RequestBody Set<String> keys) throws Exception {for (String key : keys) {onlineUserService.kickOutT(key);}return new ResponseEntity<>(HttpStatus.OK);}

總結

以上是生活随笔為你收集整理的用redis+jwt保存在线用户和获得在线用户列表、踢出用户示例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

亚洲成a人片在线www | 国产在线播放一区二区 | 九七视频在线观看 | 久久视频在线免费观看 | 免费看污网站 | 六月丁香婷婷网 | 午夜精品在线看 | 亚洲激情 | 欧美另类交在线观看 | 国产一区二区三精品久久久无广告 | 久久99久久99免费视频 | 手机看片国产 | 国产午夜影院 | 免费成人黄色片 | 99日精品| 国产精品嫩草影院123 | 九九九九精品九九九九 | 国产日韩精品在线观看 | 99久视频| 丁香婷婷成人 | 天天爽天天做 | 中文字幕不卡在线88 | 人人添人人澡人人澡人人人爽 | 久久久免费看片 | 国产成人久久精品一区二区三区 | 夜夜狠狠 | 久久玖| 美女天天操 | 极品久久久久久久 | 亚洲国产精品电影在线观看 | 91综合色 | 日日夜夜网站 | 久久免费黄色 | 久久免费视频5 | 国产精品青草综合久久久久99 | 男女全黄一级一级高潮免费看 | www.天堂av | 黄在线 | wwxxxx日本 | 天天躁日日躁狠狠 | 丝袜美腿在线播放 | 亚洲 欧美 综合 在线 精品 | 国产一级在线视频 | 国产91精品欧美 | 在线观看一区 | 日韩激情视频在线 | 最新超碰 | 久热免费在线观看 | 久久免费精品一区二区三区 | 夜夜夜夜夜夜操 | 日韩av免费观看网站 | 成人精品99 | 亚洲精品高清视频 | 国产一区麻豆 | 国产精品99免费看 | 国产 视频 久久 | 国产精品永久久久久久久www | 黄色成人影院 | 成人h在线观看 | 国产在线观看免费观看 | 日日夜av| www.狠狠操.com| 久久av中文字幕片 | 国内久久看 | www视频免费在线观看 | 日韩av电影中文字幕在线观看 | 91麻豆免费看 | 精品在线视频一区 | 国产在线观看h | 国产精品欧美精品 | 97视频在线观看成人 | 999在线视频 | 五月婷婷色丁香 | 成人h电影在线观看 | 一区二区欧美在线观看 | 天天插天天狠天天透 | av福利网址导航 | 久久午夜网 | 国产精品麻豆三级一区视频 | 国产日韩欧美在线观看视频 | 国模精品一区二区三区 | 午夜影视剧场 | 欧美激情视频一二区 | 色就干| 欧美日一级片 | 天堂在线免费视频 | 国产精品成人在线观看 | 操操操日日 | 韩国视频一区二区三区 | 天天射天天爱天天干 | 中中文字幕av| 亚洲天堂自拍视频 | 久久久国产精品成人免费 | 播五月婷婷 | 69精品久久 | 97超碰人人澡人人爱学生 | 丁香花中文字幕 | 天天操天天操一操 | 色婷婷狠狠五月综合天色拍 | a在线播放 | 国产97碰免费视频 | 国产黄色精品视频 | 人人爱人人做人人爽 | 91丨九色丨蝌蚪丨对白 | 国产精品视频免费在线观看 | 亚洲午夜精品久久久久久久久久久久 | 日韩av播放在线 | 日本少妇高清做爰视频 | 日日夜夜精品免费观看 | 亚洲国产剧情av | 人人爽人人爽人人爽 | 在线亚洲观看 | 亚洲婷婷伊人 | 亚洲黄色小说网 | 久章草在线 | 久久99网 | 欧美 国产 视频 | av国产网站| 久久视了 | 久久久久久久久久亚洲精品 | 久草国产精品 | 少妇啪啪av入口 | 色多视频在线观看 | 亚洲午夜精品福利 | 亚洲精品高清一区二区三区四区 | 久精品一区 | 国产精品一区二区三区久久 | 丰满少妇在线观看网站 | 91麻豆精品国产91久久久久久久久 | 日韩久久精品一区二区三区下载 | 婷婷丁香激情五月 | av免费高清观看 | 日韩三级中文字幕 | 亚洲欧洲国产视频 | 最近更新中文字幕 | 日韩av影视在线 | 久草精品在线观看 | 中文字幕在线电影 | 五月天久久综合 | 在线中文字幕av观看 | 欧美一级片在线播放 | 欧洲一区二区在线观看 | 亚洲va综合va国产va中文 | 在线免费观看不卡av | 久久综合给合久久狠狠色 | 久久久精品国产免费观看一区二区 | www.在线观看视频 | 精品女同一区二区三区在线观看 | 国产在线一区二区 | 久久露脸国产精品 | 天天操天天操天天操 | 伊人成人久久 | 成人黄在线 | 欧美伦理一区 | 日韩av电影免费观看 | 日本黄色免费在线 | 自拍超碰在线 | 国产九色在线播放九色 | 91亚洲综合 | 黄污网站在线 | 日本少妇高清做爰视频 | 日韩中文字幕视频在线 | 久久天堂亚洲 | 黄色大片av | 精品美女国产在线 | 久草在线资源观看 | 久久国产精品视频观看 | 国产精品久久久久久久久久妇女 | 九草视频在线观看 | 日韩xxxxxxxxx| 正在播放一区二区 | 在线看黄色的网站 | 成年人在线观看视频免费 | 国产麻豆视频免费观看 | 久久中国精品 | 欧美激情第十页 | 丁香花在线视频观看免费 | 波多野结衣一区二区 | 国内精品在线观看视频 | 在线成人性视频 | 很黄很污的视频网站 | 成人黄色免费在线观看 | 日韩理论在线视频 | 国产 日韩 欧美 在线 | 中文字幕之中文字幕 | 天天草综合 | 久久精品综合视频 | 亚洲精品国产精品国自产在线 | 久久精品毛片基地 | 亚洲激情视频在线观看 | 973理论片235影院9 | 国产精品成人自产拍在线观看 | 天堂网一区二区三区 | 日日躁夜夜躁aaaaxxxx | 色婷五月天 | 婷婷激情在线观看 | 在线免费观看黄网站 | 国产黄色片在线免费观看 | 成人免费xxx在线观看 | 一区在线电影 | 91麻豆精品国产91久久久久久 | 亚洲成色 | 日韩一区二区三区高清在线观看 | 亚洲精品国产拍在线 | 精品国产乱码久久久久久1区二区 | 中文字幕日韩免费视频 | 草久热 | 狠狠的操你 | 国产 日韩 中文字幕 | 中文字幕日本特黄aa毛片 | 最近最新最好看中文视频 | 亚洲精品资源 | 日韩欧美国产激情在线播放 | 超碰97在线看| 欧美激情片在线观看 | 日韩免费一级a毛片在线播放一级 | 99久久99精品 | 国产一二三精品 | 91亚色在线观看 | 欧美激情综合五月 | 国产黄免费 | 黄色片软件网站 | 欧美日韩国产精品一区 | 国产一区免费观看 | 免费热情视频 | 99久久er热在这里只有精品15 | 精品国产一区二区三区在线观看 | 亚洲日本一区二区在线 | 婷婷色亚洲 | 黄在线| 亚洲伊人色 | 日韩欧美在线不卡 | 欧美日韩一区二区三区在线免费观看 | 色av婷婷 | 日韩精品在线免费观看 | 久久毛片网站 | 91看片一区二区三区 | 夜夜摸夜夜爽 | 丁香六月婷婷开心 | 色婷婷综合成人av | 顶级bbw搡bbbb搡bbbb| 在线观看免费av片 | 精品福利视频在线 | 日日夜夜狠狠干 | 亚洲精品美女在线 | 一区二区伦理 | 最近中文字幕国语免费高清6 | 婷婷av色综合 | 99热精品国产一区二区在线观看 | www夜夜操| 99精品国产免费久久久久久下载 | 99中文视频在线 | 国产黄色片在线免费观看 | 人人添人人澡人人澡人人人爽 | 国产精品xxxx18a99| 在线性视频日韩欧美 | 9色在线视频 | 国内偷拍精品视频 | 尤物97国产精品久久精品国产 | 六月丁香在线视频 | 久久精品视频在线观看 | 国产亚洲精品综合一区91 | 日韩精品一区二区久久 | 97国产电影 | 99热这里只有精品在线观看 | 香蕉视频18 | 日本性动态图 | 在线va视频 | 激情欧美一区二区三区 | 夜夜躁狠狠躁日日躁 | 国产原创在线视频 | 在线观看国产麻豆 | 久久国产精品久久精品 | 欧美日韩一区二区免费在线观看 | 韩日在线一区 | 亚洲h视频在线 | 中文字幕在线视频免费播放 | 国产午夜精品一区二区三区 | 视频国产一区二区三区 | 国产精品97| 日韩精品最新在线观看 | 最新一区二区三区 | 国产精品手机看片 | 精品国产一区二区三区不卡 | 欧亚日韩精品一区二区在线 | 午夜av片| 国产成人免费观看久久久 | 五月在线 | 国内精品久久久久影院优 | 99草在线视频 | 欧美黑吊大战白妞欧美 | 精壮的侍卫呻吟h | 免费观看xxxx9999片 | 中文字幕国语官网在线视频 | www.久久久.cum | 国产小视频福利在线 | 免费人成网 | 久久狠狠一本精品综合网 | 国产精品成人一区二区三区吃奶 | 久久69av | 五月婷婷另类国产 | 久久久网| 久久久久久久久久久综合 | 91大神一区二区三区 | 五月婷婷激情六月 | av免费网站在线观看 | 欧美午夜性生活 | 狠狠躁日日躁夜夜躁av | 黄色软件在线看 | 一区免费观看 | 911香蕉视频 | 黄色福利视频网站 | 国产精品久久久久久欧美 | 麻豆视频国产在线观看 | 欧美激情综合五月色丁香小说 | 中文欧美字幕免费 | 在线a视频免费观看 | 国产永久免费高清在线观看视频 | 久久99精品一区二区三区三区 | 国产最新福利 | 婷婷伊人五月 | 国产不卡在线观看视频 | 91精品1区| 日韩一二三区不卡 | 国产一区在线视频观看 | 91桃色国产在线播放 | 国产精品99精品久久免费 | 久久久免费看片 | 日韩美av在线| 黄色网址中文字幕 | 国产精品久久在线观看 | 九九久久久 | 日韩视频一区二区在线 | 日本在线观看一区二区 | 天天看天天干 | 黄色成品视频 | 日韩中文字幕免费 | 婷婷久久网 | 奇米四色影狠狠爱7777 | 久草在线电影网 | 亚洲国内在线 | 久草资源免费 | 日本久久片 | 久久久久高清毛片一级 | 精品久久久久久久久久久久久久久久 | 亚洲人在线视频 | 精品久久久久久一区二区里番 | 超碰人人干人人 | 97国产情侣爱久久免费观看 | 天天射天天| 一区 二区 精品 | 国产又粗又硬又爽的视频 | 日韩av影片在线观看 | 涩涩网站免费 | 久久久久国 | 深夜精品福利 | 综合视频在线 | 中文在线免费观看 | 天天翘av | 99在线免费观看 | 久久高清片| 欧美日韩国产综合一区二区 | 麻豆一区二区三区视频 | 开心色激情网 | 午夜精品福利影院 | 狠狠色噜噜狠狠狠合久 | 日韩精品一区二区三区免费观看 | 五月激情婷婷丁香 | 在线观看中文字幕视频 | 国产精品国产三级国产不产一地 | 日韩精选在线 | 五月激情婷婷丁香 | 右手影院亚洲欧美 | 久久免费在线视频 | 日日天天av | 四虎永久视频 | 欧美爽爽爽 | 久草网站在线观看 | 女人魂免费观看 | 91九色在线 | 日韩av资源站 | 国产91九色蝌蚪 | 久色 网 | 国产精品乱码一区二区视频 | 人人爱人人添 | 免费黄色av.| 日韩大片免费在线观看 | 亚洲精品综合在线 | 手机在线看永久av片免费 | 中文字幕在线观看视频免费 | 玖玖爱国产在线 | 97av在线视频免费播放 | 成人a视频片观看免费 | 国产精彩视频一区 | 色视频在线 | 在线免费精品视频 | 91精品影视 | 亚洲一区二区高潮无套美女 | 在线中文字幕av观看 | 精品久久一级片 | 黄色a级片在线观看 | 国产91学生粉嫩喷水 | 激情婷婷六月 | 免费午夜av | 亚洲午夜不卡 | 国产亚州av | 91爱在线 | 久草青青在线观看 | 免费网站看av片 | 一区三区视频 | 国产久视频 | 天天草av| 亚洲传媒在线 | 97人人网| 精品日韩在线一区 | 欧美日本不卡高清 | 亚洲色综合 | 亚洲一区视频免费观看 | 亚洲国产中文字幕在线观看 | 日本动漫做毛片一区二区 | 国产精品美女999 | 国产精品99视频 | 久久只精品99品免费久23小说 | 在线观看岛国片 | 91视频国产免费 | 久久九九影视网 | 九九国产视频 | 深爱开心激情网 | 天天摸天天弄 | 在线国产激情视频 | 又黄又爽又无遮挡的视频 | 日韩在线免费观看视频 | 久久精品视频在线看 | 色av婷婷 | 日韩高清一区二区 | 色老板在线视频 | 久久精品一区 | 久久精品毛片 | 日韩国产在线观看 | 婷婷丁香国产 | av在线免费观看不卡 | 天天操夜夜操夜夜操 | 性色av免费在线观看 | 五月天色综合 | 国产女人免费看a级丨片 | 天天操夜夜摸 | 日韩精品专区在线影院重磅 | 欧美91av| 一区二区三区精品久久久 | 亚洲国产精久久久久久久 | 天天干亚洲 | 五月婷婷另类国产 | 中文字幕人成乱码在线观看 | 四虎影视成人精品 | 欧美日韩三级在线观看 | 福利视频精品 | 国产精品久久久亚洲 | 亚洲精品乱码久久久久久蜜桃不爽 | 欧美日韩免费一区二区 | 日韩在线视频一区二区三区 | 97在线观看免费视频 | 国产专区一 | 国产成人高清在线 | 久久午夜网| 亚洲三级性片 | 久久久人人人 | 中文字幕亚洲欧美日韩2019 | 国产 日韩 欧美 中文 在线播放 | 91人网站 | 一区二区三区在线视频111 | 91av在线精品 | 狠狠狠色丁香婷婷综合激情 | 亚洲每日更新 | 天天爱天天操天天干 | 一区二区三区不卡在线 | 四虎影视精品永久在线观看 | 国产视频精品免费播放 | 97看片网| 日本一区二区三区免费观看 | 国产特黄色片 | 天天操天天摸天天射 | 婷五月激情 | 国产成人一区二区三区久久精品 | 亚洲国产精品推荐 | 麻豆va一区二区三区久久浪 | 免费视频久久久久 | 91九色视频在线 | 日韩免费视频一区二区 | 成人小视频在线观看免费 | 免费观看黄色av | 99久久99久国产黄毛片 | 国产精品毛片网 | 国产视频在线免费 | 久久国产精品视频免费看 | 国产精品大片免费观看 | 91精品国产综合久久福利不卡 | 亚洲精品国产精品国自产在线 | 国产美女主播精品一区二区三区 | 欧美高清视频不卡网 | 午夜av一区二区三区 | 99热999 | 午夜影院一级片 | 天天射天天射天天射 | 玖玖精品视频 | 亚洲 欧洲 国产 日本 综合 | www.神马久久 | 一区二区三区免费看 | 天天爽天天爽 | 亚洲激情视频 | 色吊丝在线永久观看最新版本 | 91av视频播放 | 欧美一级黄色视屏 | 国产黄色在线观看 | www.日日日.com| 欧美精品一区二区三区一线天视频 | 婷婷成人在线 | 中文字幕精品www乱入免费视频 | 日韩欧美网址 | 美女国产精品 | 中国一级片免费看 | 欧美日韩视频一区二区 | 亚洲精品mv在线观看 | 又黄又刺激的视频 | 亚洲一级片免费观看 | 美女久久久久久久久久久 | 亚洲成人av一区二区 | 婷婷激情在线 | 国内丰满少妇猛烈精品播放 | 日韩,精品电影 | 国产亚洲片 | 91视频免费看网站 | 成人在线免费视频观看 | 国产精品欧美激情在线观看 | 香蕉成人在线视频 | 黄色a在线观看 | 久久精品三级 | 日韩av电影网站在线观看 | 欧美国产三区 | 天天操天天摸天天干 | 97视频免费看| 99精品热视频只有精品10 | 国产专区视频在线观看 | 国产精品久久久久久久免费大片 | 激情大尺度视频 | 夜夜骑日日 | 在线 成人 | 在线中文字幕av观看 | 亚州日韩中文字幕 | 久久免费高清视频 | 国产精品午夜在线 | 视频一区在线播放 | 高清视频一区二区三区 | 日韩精品欧美一区 | 亚洲国产视频直播 | 日本中文字幕在线播放 | 91精品999| 亚洲精品www久久久久久 | 在线观看mv的中文字幕网站 | 国产成人在线一区 | 免费看久久久 | 亚洲欧美国产日韩在线观看 | 伊甸园av在线 | 天天草综合网 | 日韩精品你懂的 | 亚洲国产美女久久久久 | 国产精品婷婷午夜在线观看 | 中文字幕中文字幕在线中文字幕三区 | 欧美激情精品久久久久久免费 | 91综合视频在线观看 | 青青草国产成人99久久 | 最近2019中文免费高清视频观看www99 | 免费在线视频一区二区 | 久久精品1区2区 | 最近免费观看的电影完整版 | 国产精品久免费的黄网站 | 国产999精品久久久久久绿帽 | 精品国自产在线观看 | 丁香激情综合久久伊人久久 | 99re6热在线精品视频 | 国产午夜精品理论片在线 | av看片网址| 免费在线播放 | 久久免费在线观看视频 | 国产精品门事件 | 激情五月在线视频 | 一级免费黄视频 | 日免费视频 | 麻豆国产精品永久免费视频 | 狠狠操精品 | 中文字幕免费高清在线 | 伊人婷婷激情 | 狠狠躁天天躁综合网 | 久久免费精品 | www久久九 | av国产在线观看 | 国产一区在线不卡 | 91正在播放| 日韩在线三区 | 一区二区av | 国产精品不卡 | 精品一区二区三区久久久 | www久久99| 欧美性色综合网站 | 色婷婷综合五月 | 婷婷激情5月天 | 久久精品欧美一区 | 成人免费视频免费观看 | av在线网站观看 | 国产黄色精品在线 | 日韩久久激情 | 日韩欧美一区二区在线 | 久久精品美女视频 | 成人91在线 | 免费观看av网站 | 6080yy精品一区二区三区 | 一级α片| 久久精品艹 | 亚洲免费观看视频 | 91免费高清观看 | www好男人 | 国内精品久久影院 | 日批网站免费观看 | 99精品视频网 | 在线天堂亚洲 | 亚洲国产mv| 人成午夜视频 | 亚洲国产精品传媒在线观看 | 国产不卡网站 | 美女视频黄的免费的 | 爱色婷婷| 91丨九色丨丝袜 | 久久久久亚洲精品成人网小说 | 人交video另类hd | 成人午夜黄色 | 激情久久影院 | 婷婷中文字幕在线观看 | 国产精品99免费看 | 国产精品1区2区3区 久久免费视频7 | 黄色午夜网站 | 九九热re | 久久字幕精品一区 | 91麻豆精品一区二区三区 | 99re视频在线观看 | 天天射天天干天天插 | 在线观看国产一区 | 夜夜看av | 视频成人 | 国产视频在线观看一区 | www.精选视频.com | 久久欧美综合 | 亚洲视频 视频在线 | 国产精品美女在线观看 | 国产九九热 | 992tv在线观看网站 | 久久久久电影网站 | 国产在线日本 | 日韩大片在线 | 97超碰在线免费观看 | 亚洲国产精品电影 | 日韩av高清| 成人免费看片网址 | 国产成人av免费在线观看 | 国产成人99久久亚洲综合精品 | 九九久久影视 | 久久久免费av | 久久99中文字幕 | 国产一级视频 | 日韩高清精品一区二区 | 91av国产视频 | 亚洲黄色av| 国产又粗又猛又黄又爽视频 | 国产成人一区二区三区 | 国产18精品乱码免费看 | 国产精品一区二区三区视频免费 | 亚洲一区久久 | 全久久久久久久久久久电影 | 一区二区三区视频网站 | 日韩高清一区在线 | 欧美精品在线视频 | 8x8x在线观看视频 | 国产小视频免费在线网址 | 国产精品久久久久久久毛片 | 欧美与欧洲交xxxx免费观看 | 亚洲人精品午夜 | 久久婷婷综合激情 | 天天干天天摸天天操 | 欧美日韩69 | 免费高清在线视频一区· | 超碰在线公开 | 国产精品综合久久久久 | 国产精品日韩久久久久 | 日韩高清精品免费观看 | 亚洲综合激情五月 | 91欧美日韩国产 | 中文字幕在线观看不卡 | 不卡av在线免费观看 | 黄色网在线播放 | 天天干,天天射,天天操,天天摸 | 不卡视频在线看 | 九七人人干| 国产欧美综合在线观看 | 欧美a在线看 | 国产成人免费av电影 | 狠狠综合久久av | 亚洲第一久久久 | 午夜婷婷网 | 欧美精品久久 | 日日草视频| 视频二区在线 | 欧美一区免费观看 | 日本高清免费中文字幕 | 天天操欧美 | 日韩午夜大片 | 国产91在| 国产精品一区二区美女视频免费看 | 国产 日韩 欧美 在线 | 免费婷婷 | 国产精品久久久免费看 | 日韩一区视频在线 | 亚洲91中文字幕无线码三区 | 欧美日韩在线观看不卡 | 国产午夜三级一区二区三桃花影视 | 日韩免费视频在线观看 | 99综合影院在线 | 成 人 a v天堂 | 国产精品精品国产婷婷这里av | 久热电影 | 夜添久久精品亚洲国产精品 | 免费看的黄色 | 久久看片网站 | 欧美日韩在线免费视频 | 久久精品123 | 国产视频日韩视频欧美视频 | 日韩免费电影一区二区 | 日韩电影中文字幕在线 | 日韩一级成人av | 91视频这里只有精品 | 免费人成在线观看网站 | 精品99久久久久久 | 日韩中字在线观看 | 国产成人精品日本亚洲999 | 五月天久久激情 | 欧美有色 | 日本韩国在线不卡 | 伊人六月 | 色综合色综合久久综合频道88 | 韩日精品在线观看 | av看片网址 | 午夜性福利 | 久久久在线免费观看 | 91精品视频免费 | 亚洲一区网 | 久久久久草 | 亚洲狠狠丁香婷婷综合久久久 | 色婷av| 日韩激情中文字幕 | 在线观看免费版高清版 | 久久免费视频这里只有精品 | 日b视频在线观看网址 | 欧美成人999 | 国内丰满少妇猛烈精品播 | 波多野结衣在线中文字幕 | 人人澡av | 久久乐九色婷婷综合色狠狠182 | 婷婷丁香激情网 | 国模一二三区 | 国产小视频在线播放 | 国产青草视频在线观看 | 日韩三级视频在线观看 | 97超碰国产在线 | 9在线观看免费高清完整 | 久久久久久久免费观看 | 久久久九九| 国产麻豆精品在线观看 | 99久久久久久国产精品 | 天堂网中文在线 | 日韩免费区 | 日韩午夜电影院 | 亚洲国内精品在线 | 精品在线视频一区二区三区 | 中文字幕日韩在线播放 | 8x成人在线 | 国产破处在线播放 | 国产成人精品国内自产拍免费看 | 2021国产在线视频 | 久久99精品国产 | 国产九九精品视频 | 91爱爱电影 | 中国黄色一级大片 | 日韩精品免费专区 | 国产一卡久久电影永久 | 在线激情小视频 | 激情婷婷六月 | 黄色片视频在线观看 | 日韩一区正在播放 | 精品国产一区二区三区四区在线观看 | 亚洲更新最快 | 99亚洲精品在线 | 麻豆91在线看 | 欧美精品v国产精品v日韩精品 | 日韩免费观看视频 | 亚洲国产精彩中文乱码av | 亚洲专区欧美 | av无限看| 500部大龄熟乱视频使用方法 | 夜夜操网 | 国产精品久久久久亚洲影视 | 波多野结衣视频一区二区 | 一区二区三区手机在线观看 | 日韩a在线看| 日韩精品高清视频 | 草久久av| 91资源在线播放 | 日产中文字幕 | 亚洲精品人人 | 美女视频一区 | 最近中文字幕在线播放 | 1024在线看片 | 99热播精品 | 亚洲成 人精品 | 一区二区网 | 亚洲欧美日韩一区二区三区在线观看 | www.大网伊人 | 在线天堂中文www视软件 | 国产乱对白刺激视频不卡 | 亚洲日本一区二区在线 | 色com网| 中文字幕国产精品一区二区 | 一本一本久久a久久精品牛牛影视 | 久久精品中文字幕一区二区三区 | 日韩av高潮| 欧美va天堂va视频va在线 | 91亚洲精品久久久久图片蜜桃 | 久色小说 | 成人影视免费 | 麻豆91精品视频 | 免费观看91视频 | 国产不卡av在线 | 黄色av三级在线 | 国产精品第72页 | 香蕉视频网址 | av资源免费观看 | 国产亚洲欧美在线视频 | 亚洲乱码精品久久久久 | 在线观影网站 | 毛片99 | av免费在线网 | 黄色毛片在线观看 | 国产精品国产三级在线专区 | 日韩色爱 | 国产精品久久嫩一区二区免费 | 日日夜夜天天久久 | 日韩精品91偷拍在线观看 | 日韩三级视频在线看 | 天无日天天操天天干 | 国产色视频一区 | 韩日精品中文字幕 | 国产精品二区在线 | 日韩国产精品久久久久久亚洲 | 在线观看电影av | 中文国产成人精品久久一 | 亚洲精品www. | 国产三级午夜理伦三级 | 成人免费在线视频 | 韩日成人av| 狠狠狠狠狠狠天天爱 | 日韩精品一区二区三区丰满 | 我爱av激情网| 999日韩| 久久精品一区八戒影视 | 久久影视中文字幕 | 免费在线观看av的网站 | 国产精品一区二区三区在线 | 黄色毛片视频免费 | 免费av看片 | 国产精品高清一区二区三区 | 久久狠狠一本精品综合网 | 日日夜夜91 | 色综合色综合色综合 | 日韩av一区在线观看 | av成人在线电影 | 国产亚洲精品日韩在线tv黄 | 天天干,夜夜爽 | 久久久久二区 | 欧美一区二区伦理片 | 97精品国产一二三产区 | 久久久久久高潮国产精品视 | 国产又粗又长又硬免费视频 | 超碰在线个人 | 国产福利一区二区三区视频 | 伊人久久影视 | 色激情五月 | 国产不卡免费视频 | 亚洲精品乱码久久久久久写真 | 免费观看9x视频网站在线观看 | 亚洲国产精品一区二区久久,亚洲午夜 | 成人在线视频网 | 国产日韩视频在线观看 | 久久久久久久国产精品 | 91夜夜夜 | 国产成人免费av电影 | 亚洲精品在线观看网站 | 99热在线精品观看 | 在线国产不卡 | 天天玩天天干 | 色婷婷成人网 | 中文字幕婷婷 | 国产精品18久久久久久久 | 超碰av免费| 欧美日韩久久久 | 久草精品视频在线观看 | 欧美精品免费视频 | 亚洲精选视频免费看 | 黄污网站在线观看 | 蜜臀一区二区三区精品免费视频 | 精品女同一区二区三区在线观看 | 2024av| 男女视频国产 | 高清av网 | 久久精品久久精品久久精品 | 久久与婷婷 | 欧美成人h版在线观看 | 中文字幕在线资源 | 国产精品免费在线视频 | 91福利免费 | 天天操·夜夜操 | 网站免费黄 | 少妇bbw搡bbbb搡bbb | 日日夜夜狠狠干 | 天天做夜夜做 | 黄色小说在线免费观看 | 91精品在线免费观看视频 | 91伊人| 99国产视频 | 免费h漫在线观看 | 四虎在线影视 | 在线播放国产一区二区三区 | 99久久精品国产系列 | 国产婷婷精品 | 久久精品5 | 国产精品欧美激情在线观看 | 四虎影视国产精品免费久久 | 在线观看成人毛片 | 久久综合影院 | 日日爽天天操 | 久久久久女人精品毛片九一 | 天天综合五月天 | 亚洲午夜精品一区二区三区电影院 | 久久精品99国产国产精 | 国产黄免费在线观看 | 一区二区三区日韩精品 | 国产麻豆精品95视频 | 亚洲精品mv在线观看 | 国产精品亚洲精品 | 日韩精品免费在线播放 | 成人黄色毛片 | 免费看黄电影 | 玖玖爱国产在线 | 一区二区欧美在线观看 | 日产av在线播放 | 婷婷av色综合 | 麻豆视频免费入口 | 午夜av不卡| 国产精品激情在线观看 | 色综合天天视频在线观看 | 伊人永久| 久久综合九色综合网站 | 天天干.com| 天天干天天做 | 91精品国产自产老师啪 | 国产精品久久二区 | av电影 一区二区 | 久久综合久色欧美综合狠狠 | aav在线| 999久久久免费精品国产 | 99热精品免费观看 | 国产成人精品一区二区三区福利 | 久久精品这里热有精品 | 91香蕉视频 | 亚洲精品小视频 | www178ccom视频在线| 久久五月婷婷丁香 | 亚洲免费av片 | 亚洲三级网 | 97成人精品视频在线观看 | 一区精品久久 | 在线观看911视频 | 日韩大片免费在线观看 | 超碰免费公开 | 五月婷婷黄色 | 99c视频高清免费观看 | 美女视频永久黄网站免费观看国产 | 亚洲日韩欧美视频 | 欧美日本在线视频 | 精品国产免费一区二区三区五区 | 天天天干夜夜夜操 | 久久久免费网站 | 亚洲欧洲在线视频 |