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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

使用spring boot+shiro+jwt+mybatis-plus搭建项目框架

發布時間:2024/10/5 编程问答 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用spring boot+shiro+jwt+mybatis-plus搭建项目框架 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.創建spring boot項目,并導入依賴

pom.xml

<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-aop</artifactId></dependency><dependency><groupId>com.microsoft.sqlserver</groupId><artifactId>mssql-jdbc</artifactId><scope>runtime</scope></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.0.1</version></dependency><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.2.13</version></dependency><dependency><groupId>org.apache.velocity</groupId><artifactId>velocity</artifactId><version>1.7</version></dependency><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>2.9.2</version></dependency><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger-ui</artifactId><version>2.9.2</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.69</version></dependency><dependency><groupId>org.apache.shiro</groupId><artifactId>shiro-spring</artifactId><version>1.3.2</version></dependency><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>3.3</version></dependency><dependency><groupId>com.squareup.okhttp3</groupId><artifactId>okhttp</artifactId><version>3.14.0</version></dependency><dependency><groupId>com.auth0</groupId><artifactId>java-jwt</artifactId><version>3.8.3</version></dependency><!-- https://mvnrepository.com/artifact/com.alibaba/druid --><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.21</version></dependency><!-- 緩存 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency><dependency><groupId>org.json</groupId><artifactId>json</artifactId><version>20180130</version></dependency></dependencies>

2.在配置文件中配置掃描mybatis的mapper.xml的路徑

?

mybatis-plus.mapper-locations=classpath*:mapper/*.xml

3.配置shiro從數據庫動態讀取的realm

?

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.shiro.mapper.RfgcglMapper; import com.shiro.pojo.RFMenu; import com.shiro.pojo.Rfgcgl; import com.shiro.pojo.RfrelRoleMenu; import com.shiro.pojo.Rfrole; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.authc.AuthenticationException; import org.apache.shiro.authc.AuthenticationInfo; import org.apache.shiro.authc.AuthenticationToken; import org.apache.shiro.authc.SimpleAuthenticationInfo; import org.apache.shiro.authz.AuthorizationInfo; import org.apache.shiro.authz.SimpleAuthorizationInfo; import org.apache.shiro.realm.AuthorizingRealm; import org.apache.shiro.subject.PrincipalCollection; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value;import java.util.HashSet; import java.util.List; import java.util.Set;/*** MyRealm:自定義一個授權** @author zhangxiaoxiang* @date: 2019/07/12*/@Slf4j public class JwtRealm extends AuthorizingRealm {@Autowiredprivate RfgcglMapper rfgcglMapper;@Value("${admin.username}")private String adminname;@Overridepublic boolean supports(AuthenticationToken token) {return token instanceof JwtToken;}/*** 只有當需要檢測用戶權限的時候才會調用此方法,例如checkRole,checkPermission之類的** @param principals* @return*/@Overrideprotected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principals) {//保存所有角色名Set<String> allRoles = new HashSet<>();//保存所有權限名Set<String> allPermissions = new HashSet<>();String username = JwtUtil.getUsername(principals.toString());if (username.equals(adminname)){ // allRoles.add("admin");SimpleAuthorizationInfo simpleAuthorizationInfo = new SimpleAuthorizationInfo(); // simpleAuthorizationInfo.addRoles(allRoles);List<RFMenu> rfMenus = new RFMenu().selectList(new QueryWrapper<RFMenu>().ne("MenuCaption",""));for (RFMenu m: rfMenus) {allPermissions.add(m.getMenuBrief());}simpleAuthorizationInfo.addStringPermissions(allPermissions);return simpleAuthorizationInfo;}Rfgcgl user = rfgcglMapper.selectOne(new QueryWrapper<Rfgcgl>().eq("YHMC", username));//查詢對應角色Rfrole rfrole = new Rfrole().selectById(user.getRoleid());allRoles.add(rfrole.getRolename());//查詢所有權限List<RfrelRoleMenu> rfrelRoleMenus = new RfrelRoleMenu().selectList(new QueryWrapper<Rfrole>().eq("roleid", rfrole.getId()));for (RfrelRoleMenu rm : rfrelRoleMenus) {RFMenu menu = new RFMenu();menu = menu.selectOne(new QueryWrapper<RFMenu>().eq("Lsh", rm.getMenuid()));allPermissions.add(menu.getMenuBrief());}SimpleAuthorizationInfo simpleAuthorizationInfo = new SimpleAuthorizationInfo();simpleAuthorizationInfo.addRoles(allRoles);simpleAuthorizationInfo.addStringPermissions(allPermissions);return simpleAuthorizationInfo;}//用戶認證@Overrideprotected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken auth) throws AuthenticationException {String token = (String) auth.getCredentials();// 解密獲得username,用于和數據庫進行對比String username = null;try {//這里工具類沒有處理空指針等異常這里處理一下(這里處理科學一些)username = JwtUtil.getUsername(token);} catch (Exception e) {throw new AuthenticationException("heard的token拼寫錯誤或者值為空");}if (username == null) {log.error("token無效(空''或者null都不行!)");throw new AuthenticationException("token無效");}//如果用戶是超級管理員,直接返回數據if(username.equals(adminname)){return new SimpleAuthenticationInfo(token, token, "my_realm");}Rfgcgl userBean = rfgcglMapper.selectOne(new QueryWrapper<Rfgcgl>().eq("YHMC", username));if (userBean == null) {log.error("用戶不存在!)");throw new AuthenticationException("用戶不存在!");}boolean verify = JwtUtil.verify(token, username, userBean.getYhkl());if (!verify) {log.error("用戶名或密碼錯誤(token無效或者與登錄者不匹配)!)");throw new AuthenticationException("用戶名或密碼錯誤(token無效或者與登錄者不匹配)!"); // throw new AppException(999,"用戶名或密碼錯誤(token無效或者與登錄者不匹配)!");}return new SimpleAuthenticationInfo(token, token, "my_realm");} }

4.配置攔截請求頭參數的過濾器

import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.serializer.SerializerFeature; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.authc.AuthenticationException; import org.apache.shiro.web.filter.authc.BasicHttpAuthenticationFilter; import org.springframework.http.HttpStatus; import org.springframework.stereotype.Component; import org.springframework.web.bind.annotation.RequestMethod;import javax.servlet.Filter; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;/*** JwtFilter:jwt過濾器來作為shiro的過濾器** @author zhangxiaoxiang* @date: 2019/07/12*/ @Slf4j @Component//這個注入與否影響不大 public class JwtFilter extends BasicHttpAuthenticationFilter implements Filter {/*** 執行登錄* @param request* @param response* @return* @throws Exception*/@Overrideprotected boolean executeLogin(ServletRequest request, ServletResponse response) throws Exception {HttpServletRequest httpServletRequest = (HttpServletRequest) request;String token = httpServletRequest.getHeader("Token");JwtToken jwtToken = new JwtToken(token);// 提交給realm進行登入,如果錯誤他會拋出異常并被捕獲try {getSubject(request, response).login(jwtToken);// 如果沒有拋出異常則代表登入成功,返回truereturn true;} catch (AuthenticationException e) { // ResponseData responseData = ResponseDataUtil.authorizationFailed( "沒有訪問權限,原因是:" + e.getMessage());ResultInfo responseData = ResultInfo.error( 401,"請求失敗,原因是:" + e.getMessage());//SerializerFeature.WriteMapNullValue為了null屬性也輸出json的鍵值對Object o = JSONObject.toJSONString(responseData, SerializerFeature.WriteMapNullValue);response.setCharacterEncoding("utf-8");response.getWriter().print(o);return false;}}/*** 執行登錄認證** @param request* @param response* @param mappedValue* @return*/@Overrideprotected boolean isAccessAllowed(ServletRequest request, ServletResponse response, Object mappedValue) {try {return executeLogin(request, response);// return true;有一篇博客這里直接返回true是不正確的,在這里我特別指出一下} catch (Exception e) {log.error("JwtFilter過濾驗證失敗!");return false;}}/*** 對跨域提供支持* @param request* @param response* @return* @throws Exception*/@Overrideprotected boolean preHandle(ServletRequest request, ServletResponse response) throws Exception {HttpServletRequest httpServletRequest = (HttpServletRequest) request;HttpServletResponse httpServletResponse = (HttpServletResponse) response;httpServletResponse.setHeader("Access-control-Allow-Origin", httpServletRequest.getHeader("Origin"));httpServletResponse.setHeader("Access-Control-Allow-Methods", "GET,POST,OPTIONS,PUT,DELETE");httpServletResponse.setHeader("Access-Control-Allow-Headers", httpServletRequest.getHeader("Access-Control-Request-Headers"));// 跨域時會首先發送一個option請求,這里我們給option請求直接返回正常狀態if (httpServletRequest.getMethod().equals(RequestMethod.OPTIONS.name())) {httpServletResponse.setStatus(HttpStatus.OK.value());return false;}return super.preHandle(request, response);}

?5.配置shiro

import com.shiro.config.JwtFilter; import com.shiro.config.JwtRealm; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.mgt.SecurityManager; import org.apache.shiro.spring.LifecycleBeanPostProcessor; import org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor; import org.apache.shiro.spring.web.ShiroFilterFactoryBean; import org.apache.shiro.web.mgt.DefaultWebSecurityManager; import org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.DependsOn;import javax.servlet.Filter; import java.util.HashMap; import java.util.LinkedHashMap; import java.util.Map;/*** ShiroConfig:shiro 配置類,配置哪些攔截,哪些不攔截,哪些授權等等各種配置都在這里* @author zhangxiaoxiang* @date: 2019/07/12*/@Configuration @Slf4j public class ShiroConfig {/*** Shiro生命周期處理器*/@Bean(name = "lifecycleBeanPostProcessor")public static LifecycleBeanPostProcessor getLifecycleBeanPostProcessor() {return new LifecycleBeanPostProcessor();}/*** 開啟Shiro的注解(如@RequiresRoles,@RequiresPermissions),需借助SpringAOP掃描使用Shiro注解的類,并在必要時進行安全邏輯驗證*/@Bean@DependsOn("lifecycleBeanPostProcessor")public DefaultAdvisorAutoProxyCreator defaultAdvisorAutoProxyCreator() {DefaultAdvisorAutoProxyCreator creator = new DefaultAdvisorAutoProxyCreator();creator.setProxyTargetClass(true); // creator.setUsePrefix(true);return creator;}/*** 開啟shiro aop注解支持.* 使用代理方式;所以需要開啟代碼支持;*/@Beanpublic AuthorizationAttributeSourceAdvisor authorizationAttributeSourceAdvisor(SecurityManager securityManager){AuthorizationAttributeSourceAdvisor attributeSourceAdvisor = new AuthorizationAttributeSourceAdvisor();//設置安全管理器attributeSourceAdvisor.setSecurityManager(securityManager);return attributeSourceAdvisor;}@Beanpublic JwtRealm jwtRealm(){JwtRealm jwtRealm = new JwtRealm();return jwtRealm;}/*** 注入安全管理器* @param* @return*/@Bean(name = "securityManager")public DefaultWebSecurityManager getDefaultWebSecurityManager() {DefaultWebSecurityManager securityManager = new DefaultWebSecurityManager();securityManager.setRealm(jwtRealm()); // 關聯realmreturn securityManager;}/*** 注入安全過濾器* @param securityManager* @return*/@Bean("shiroFilter")public ShiroFilterFactoryBean shiroFilter(DefaultWebSecurityManager securityManager) {ShiroFilterFactoryBean shiroFilterFactoryBean = new ShiroFilterFactoryBean();shiroFilterFactoryBean.setSecurityManager(securityManager);//攔截器Map<String, String> filterChainDefinitionMap = new LinkedHashMap<String, String>();// 配置不會被攔截的鏈接 順序判斷filterChainDefinitionMap.put("/api/token", "anon"); // filterChainDefinitionMap.put("/websocket/**", "anon");filterChainDefinitionMap.put("/api/login", "anon"); // filterChainDefinitionMap.put("/upload/**","anon");注釋后訪問圖片需要請求頭有token信息filterChainDefinitionMap.put("/druid/**", "anon");filterChainDefinitionMap.put("/swagger-ui.html", "anon");filterChainDefinitionMap.put("/webjars/springfox-swagger-ui/**", "anon");filterChainDefinitionMap.put("/swagger-resources/**", "anon");filterChainDefinitionMap.put("/v2/api-docs", "anon"); // filterChainDefinitionMap.put("/**","authc"); // // 添加自己的過濾器并且取名為jwt // Map<String, Filter> filterMap = new HashMap<String, Filter>(); // filterMap.put("authc", new ShiroUserFilter()); // shiroFilterFactoryBean.setFilters(filterMap); // //<!-- 過濾鏈定義,從上向下順序執行,一般將/**放在最為下邊 // filterChainDefinitionMap.put("/**","authc");// 添加自己的過濾器并且取名為jwtMap<String, Filter> filterMap = new HashMap<String, Filter>(1);filterMap.put("jwt", new JwtFilter());shiroFilterFactoryBean.setFilters(filterMap);//<!-- 過濾鏈定義,從上向下順序執行,一般將/**放在最為下邊filterChainDefinitionMap.put("/**", "jwt");//未授權界面;shiroFilterFactoryBean.setUnauthorizedUrl("/403");shiroFilterFactoryBean.setFilterChainDefinitionMap(filterChainDefinitionMap);return shiroFilterFactoryBean;}}

?6.controller層實現

登錄

@PostMapping("/api/login") public ResultInfo login(String username, String password, String captcha){Map<String,Object> map = new HashMap<>();try {if(StringUtils.isBlank(username)||StringUtils.isBlank(password)||StringUtils.isBlank(captcha)){return ResultInfo.fail(902,"username或password或captcha不能為空");}String token = JwtUtil.sign(username, password);map.put("token",token);map.put("user",user);return ResultInfo.ok(map);}catch (Exception e) {e.printStackTrace();String ex = e.getClass().getName();if (ex != null) {if (UnknownAccountException.class.getName().equals(ex)) {return ResultInfo.fail(904,"用戶名不存在");} else if (IncorrectCredentialsException.class.getName().equals(ex)) {return ResultInfo.fail(905,"賬戶或密碼錯誤");}else if(AuthenticationException.class.getName().equals(ex)){return ResultInfo.fail(906,"token無效");}else {return ResultInfo.fail(907,"登錄失敗");}}return ResultInfo.fail(901,"登錄失敗");} }

?普通查詢

@RequiresPermissions("數據查詢") @ApiOperation("民族列表") @PostMapping("/query/mz") public ResultInfo getMzList(){Map<String,Object> map = new HashMap<>();try {List<String> list = xkSqMapper.getMz();map.put("datas",list);return ResultInfo.ok(map);}catch (Exception e){return ResultInfo.fail(901,"獲取民族列表失敗");} }

啟動項目就可以訪問controller中的接口了。

項目中用到的工具類

JwtToken
import org.apache.shiro.authc.AuthenticationToken;/*** JwtToken:實現shiro的AuthenticationToken接口的類JwtToken** @author zhangxiaoxiang* @date: 2019/07/12*/ public class JwtToken implements AuthenticationToken {private String token;public JwtToken(String token) {this.token = token;}@Overridepublic Object getPrincipal() {return token;}@Overridepublic Object getCredentials() {return token;} }
JwtUtil
import com.auth0.jwt.JWT; import com.auth0.jwt.JWTVerifier; import com.auth0.jwt.algorithms.Algorithm; import com.auth0.jwt.exceptions.JWTDecodeException; import com.auth0.jwt.interfaces.DecodedJWT; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component;import java.util.Date;/*** JwtUtil:用來進行簽名和效驗Token** @author zhangxiaoxiang* @date: 2019/07/12*/ @Slf4j @Component public class JwtUtil {/*** JWT驗證過期時間 EXPIRE_TIME 分鐘*/private static final long EXPIRE_TIME = 30 * 60 * 1000;/*** 校驗token是否正確** @param token 密鑰* @param secret 用戶的密碼* @return 是否正確*/public static boolean verify(String token, String username, String secret) {try {//根據密碼生成JWT效驗器Algorithm algorithm = Algorithm.HMAC256(secret);JWTVerifier verifier = JWT.require(algorithm).withClaim("username", username).build();//效驗TOKENDecodedJWT jwt = verifier.verify(token);log.info("登錄驗證成功!");return true;} catch (Exception exception) {exception.printStackTrace();log.error("JwtUtil登錄驗證失敗!");return false;}}/*** 獲得token中的信息無需secret解密也能獲得** @return token中包含的用戶名*/public static String getUsername(String token) {try {DecodedJWT jwt = JWT.decode(token);return jwt.getClaim("username").asString();} catch (JWTDecodeException e) {return null;}}/*** 生成token簽名EXPIRE_TIME 分鐘后過期** @param username 用戶名(電話號碼)* @param secret 用戶的密碼* @return 加密的token*/public static String sign(String username, String secret) {Date date = new Date(System.currentTimeMillis() + EXPIRE_TIME);Algorithm algorithm = Algorithm.HMAC256(secret);// 附帶username信息return JWT.create().withClaim("username", username).withExpiresAt(date).sign(algorithm);} }
ResultInfo
import com.alibaba.fastjson.JSONObject;import java.util.LinkedHashMap; import java.util.List; import java.util.Map;/*** Api響應對象*/public class ResultInfo extends LinkedHashMap<String, Object> {private static final long serialVersionUID = -1052650877920800810L;private ResultInfo() {}public static ResultInfo ok() {return new ResultInfo().code(200);}public static ResultInfo ok(String msg) {return new ResultInfo().code(200).msg(msg);}public static ResultInfo ok(Map<String, Object> data) {return new ResultInfo().code(200).data(data);}public static ResultInfo ok(List<Map<String, Object>> datas) {return new ResultInfo().code(200).datas(datas);}public static ResultInfo ok(Map<String, Object> data, List<Map<String, Object>> datas) {return new ResultInfo().code(200).data(data).datas(datas);}public static ResultInfo ok(String msg, Map<String, Object> data) {return new ResultInfo().code(200).msg(msg).data(data);}public static ResultInfo ok(String msg, List<Map<String, Object>> datas) {return new ResultInfo().code(200).msg(msg).datas(datas);}public static ResultInfo ok(String msg, Map<String, Object> data, List<Map<String, Object>> datas) {return new ResultInfo().code(200).msg(msg).data(data).datas(datas);}public static ResultInfo error(int code) {return new ResultInfo().code(code);}public static ResultInfo error(int code, String msg) {return new ResultInfo().code(code).msg(msg);}public static ResultInfo fail(int err) {return new ResultInfo().code(err);}public static ResultInfo fail(int err, String msg) {return new ResultInfo().code(err).msg(msg);}private ResultInfo code(Integer code) {this.put("code", code);return this;}private ResultInfo msg(String msg) {this.put("message", msg);return this;}private ResultInfo data(Map<String, Object> data) {this.put("data", data);return this;}private ResultInfo datas(List<Map<String, Object>> datas) {this.put("datas", datas);return this;}@Overridepublic String toString() {return JSONObject.toJSONString(this).toString();} }

?

總結

以上是生活随笔為你收集整理的使用spring boot+shiro+jwt+mybatis-plus搭建项目框架的全部內容,希望文章能夠幫你解決所遇到的問題。

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

一区二区三区久久精品 | 日韩午夜电影 | 岛国av在线 | 亚洲天堂在线观看完整版 | 成人性生活大片 | 久久婷婷综合激情 | 日本在线观看中文字幕无线观看 | 91丨九色丨高潮 | 国产黄影院色大全免费 | 欧美日本啪啪无遮挡网站 | 国产免费久久 | 91av视频观看| 国产精品尤物 | 欧美日韩国产综合一区二区 | 国产又粗又长的视频 | 国产视频色 | 国产色视频一区二区三区qq号 | 激情婷婷网 | 中文字幕123区 | 碰碰影院 | 麻豆精品在线 | 亚洲高清在线 | 国内久久久久 | 西西444www高清大胆 | 午夜视频在线观看一区 | 亚洲视频99| 亚洲va综合va国产va中文 | 国产精品99久久久久久武松影视 | 久久综合九色综合97婷婷女人 | 成人免费在线观看av | 久久综合综合久久综合 | 国产精品第一页在线观看 | 亚洲欧美日韩一区二区三区在线观看 | www黄com| 蜜桃久久久 | 日韩在线字幕 | 大荫蒂欧美视频另类xxxx | 中文高清av | 日韩色视频在线观看 | 91精品天码美女少妇 | 日韩免费一区二区在线观看 | 日韩av男人的天堂 | 在线观看mv的中文字幕网站 | 久久国产热 | 女人18毛片a级毛片一区二区 | 91精品国产乱码在线观看 | 色综合久久88色综合天天人守婷 | 97在线观看免费观看 | 欧美一级在线看 | 亚洲精品一区二区在线观看 | 欧美热久久 | 四虎伊人 | 国内外成人免费在线视频 | 国产精品人人做人人爽人人添 | 日日综合 | 亚洲最新av网站 | 国产精品人成电影在线观看 | 深夜免费网站 | 黄色免费网 | 久爱精品在线 | 狠狠操操| 网站在线观看日韩 | 在线中文字幕网站 | 五月综合久久 | 欧美日韩久久久 | 天天天天天操 | 亚洲精选视频免费看 | 午夜视频在线瓜伦 | 久要激情网 | 国产在线不卡精品 | 成年人免费在线播放 | 久久久精品一区二区三区 | 日韩有码在线观看视频 | 欧美乱码精品一区二区 | 99精品热视频只有精品10 | 麻豆传媒视频在线免费观看 | 中文字幕乱在线伦视频中文字幕乱码在线 | 在线视频 成人 | 日韩免费在线观看视频 | a级国产乱理伦片在线观看 亚洲3级 | 狠狠色丁香婷婷综合久小说久 | 日本巨乳在线 | 成人香蕉视频 | 天天操天天添 | 色视频在线看 | 亚洲黄色大片 | 午夜国产福利在线观看 | 人人玩人人添人人澡97 | 国产精品久久在线 | 欧洲一区二区三区精品 | 亚洲伊人第一页 | 高清精品视频 | a级片在线播放 | wwxxxx日本 | 欧美激情第八页 | 国产精品视频永久免费播放 | 亚洲国产一区av | 国产午夜三级一区二区三 | 波多野结衣久久资源 | jizzjizzjizz亚洲| 性色av免费在线观看 | 亚洲毛片在线观看. | 午夜视频不卡 | 不卡中文字幕在线 | sesese图片| 一级淫片在线观看 | 久久色在线播放 | 亚洲成人av一区 | 色中文字幕在线观看 | 99国产精品一区二区 | 中文字幕在线观看免费高清电影 | 国产视频首页 | 国产成人综合在线观看 | 91理论片午午伦夜理片久久 | 日本三级大片 | 久久99久久久久久 | 狠狠操狠狠干天天操 | 中文字幕在线专区 | 国产激情电影综合在线看 | 亚洲国产免费av | 啪啪免费观看网站 | 国产91对白在线播 | 操操综合 | 精品国产一区二区在线 | 97操操操| 黄色亚洲在线 | 国产在线不卡 | 啪啪激情网 | 成人全视频免费观看在线看 | 美女视频黄是免费的 | 欧美污污网站 | 国产视频一区在线 | 色婷婷 亚洲 | 色综合天天狠天天透天天伊人 | 久久天天综合网 | 香蕉视频在线看 | 欧美精品免费一区二区 | 曰韩精品| 波多野结衣资源 | 日韩高清免费在线 | 黄色小网站免费看 | 国产一级片直播 | 在线有码中文字幕 | 久久精品这里精品 | 日韩av中文字幕在线免费观看 | 一区二区三区免费看 | 天天干天天操天天拍 | 丁香久久五月 | 看片在线亚洲 | 国产不卡视频在线播放 | 精品国产诱惑 | 亚洲欧美日本国产 | 国产黑丝一区二区 | 欧美精品乱码99久久影院 | 成年人黄色av | 青青河边草观看完整版高清 | 免费在线观看av片 | 有码一区二区三区 | 成人h动漫在线看 | 四季av综合网站 | 日本黄色免费播放 | 色综合久久五月 | 国产在线观看 | 国产第一页精品 | 黄色毛片在线观看 | 99久久精品免费看国产四区 | 在线之家免费在线观看电影 | 欧美性天天 | 亚洲国产中文在线观看 | 91九色在线播放 | 午夜精品久久久久久中宇69 | 国产日韩在线视频 | 久久免费99精品久久久久久 | 最近的中文字幕大全免费版 | 国产一级性生活视频 | 2019中文最近的2019中文在线 | 激情网站免费观看 | 天天av综合网 | www久久久久 | www.天天色 | 美女视频黄是免费的 | 久久最新网址 | 欧美三人交| 在线看黄色的网站 | 久久99热这里只有精品 | 国产一区在线视频 | 婷婷香蕉 | 最近2019年日本中文免费字幕 | 男女精品久久 | 日日夜夜免费精品 | av成人动漫 | 天堂va在线高清一区 | 欧美日韩国产mv | 国产精品精品久久久久久 | 国产精品九九九九九九 | 麻豆va一区二区三区久久浪 | 激情伊人五月天久久综合 | 欧美污在线观看 | 精品一区二区免费视频 | 久久久久欠精品国产毛片国产毛生 | 天天操天天舔天天干 | 97精品视频在线 | 免费亚洲片 | 国产精品综合久久 | 久久久免费少妇 | 久久久免费在线观看 | 欧美一区二区三区在线看 | av大片网站| 久久性生活片 | 久久免费公开视频 | 色婷婷狠狠五月综合天色拍 | 日本久久精 | 亚洲日韩中文字幕 | 九九热在线免费观看 | 午夜精品久久久久久久99热影院 | 在线观看国产一区 | 久草视频在线免费 | 国产破处在线播放 | 狠狠躁夜夜躁人人爽超碰91 | 日韩免费在线观看视频 | 日韩色综合网 | 91色国产在线 | 中文字幕一区二区在线播放 | 网站在线观看你们懂的 | 综合色狠狠 | 最新婷婷色 | 久久国产影院 | 激情丁香综合 | 亚洲最新av网站 | 伊人久久五月天 | 久久久久久久久久久国产精品 | 草免费视频 | 天天天色 | av电影在线观看完整版一区二区 | 欧美91片 | 亚洲精品在线播放视频 | www.狠狠干 | 国产亚洲精品日韩在线tv黄 | 国产一区在线不卡 | 国产黄色免费 | 中文字幕久久网 | 日韩电影在线一区二区 | 国产黄色在线观看 | 成人影视免费看 | 最近中文字幕国语免费av | 久久这里只有精品23 | 九九九国产 | 国产精品一区二区无线 | 亚洲精品久 | 中文免费观看 | 精品一区三区 | 国内精品久久久久久 | 三日本三级少妇三级99 | 日韩一级黄色av | 99av在线视频| 日本三级不卡视频 | 亚洲精品一区二区18漫画 | 69国产盗摄一区二区三区五区 | 国产裸体永久免费视频网站 | 久久国产精品99国产 | 中文字幕免| 免费av影视 | 午夜影院一级 | 久久久久国产精品一区二区 | 久草在线高清 | 色婷婷丁香 | 中文字幕永久 | 日韩网 | 天天激情站| 欧美尹人 | 国产精品成人免费 | av大全在线| 精品不卡av | 午夜婷婷网 | 免费网站看v片在线a | 国产亚州av | 我要色综合天天 | 在线免费国产 | 中文字幕 国产 一区 | 国产美女视频免费观看的网站 | 看国产黄色片 | www.国产视频 | 蜜桃传媒一区二区 | 久久久久免费精品国产小说色大师 | 天天爽夜夜爽人人爽曰av | 久久视频国产精品免费视频在线 | 色在线免费 | 97热久久免费频精品99 | 欧美激情综合五月色丁香 | 久久久久久高潮国产精品视 | 国产在线精| 综合五月 | 岛国av在线不卡 | 麻豆久久精品 | zzijzzij亚洲成熟少妇 | 亚洲一区二区视频在线 | 欧美黄色成人 | 最近中文字幕高清字幕免费mv | 成人免费视频网址 | 日本一区二区不卡高清 | 日韩成人邪恶影片 | 欧美精品v国产精品v日韩精品 | 国产小视频在线免费观看视频 | 亚洲欧美日韩精品一区二区 | 精品亚洲网| 国产精品免费久久久 | 免费网站观看www在线观看 | 欧美成人69av | 91大神电影 | 丁香婷婷综合激情 | 国内精品久久久久影院男同志 | 日韩欧美成人网 | 国产一级黄色免费看 | 日韩r级电影在线观看 | 91麻豆精品国产 | 国产精品一区电影 | 四虎影视成人精品国库在线观看 | 久久99国产视频 | 亚洲视频精选 | 亚洲视频www | 西西444www大胆高清视频 | 日本公妇在线观看高清 | 国产高清在线视频 | 亚洲综合国产精品 | 91精品婷婷国产综合久久蝌蚪 | 精品你懂的 | 国产精品久久嫩一区二区免费 | 日韩精品极品视频 | 日韩电影精品 | 色操插| 日韩一区二区三免费高清在线观看 | 亚洲欧洲成人精品av97 | 2024国产在线 | 天天透天天插 | 91精品国产自产在线观看 | 亚州精品国产 | 97国产精品免费 | 久久久国产影视 | 丁香花在线观看免费完整版视频 | 99精品美女 | 九九九国产 | 国产真实精品久久二三区 | 亚洲欧美偷拍另类 | 日韩精品一区电影 | 亚洲精品午夜一区人人爽 | 久久久久久久久精 | 日本丶国产丶欧美色综合 | 免费色视频在线 | 国产成人777777| 国产一区二区在线观看视频 | 亚洲视频免费视频 | 手机在线看永久av片免费 | 在线日韩一区 | 欧美性色19p| 国产精品观看在线亚洲人成网 | 色综合久久五月 | 又黄又爽又湿又无遮挡的在线视频 | 色综合天天天天做夜夜夜夜做 | 亚洲国产中文字幕在线视频综合 | 亚洲a资源 | 国产成人精品久久久 | 最新av免费在线观看 | 国产精品视频在线观看 | 日韩在线观看三区 | 91精品一区二区三区蜜桃 | 亚洲欧洲精品一区二区 | 免费三级影片 | 国产成人精品一区在线 | 国产网站在线免费观看 | 国产香蕉久久精品综合网 | 国产999精品久久久久久 | 欧美一级黄色网 | 欧美福利久久 | 亚洲精品免费在线视频 | 亚洲综合在线五月 | 丁香花中文字幕 | 成人午夜电影网 | 精品一区 精品二区 | 中文字幕在线日 | 国产亚洲精品日韩在线tv黄 | 欧美久久久久久久久久久久久 | 国产成人a亚洲精品 | 国产美女主播精品一区二区三区 | 亚洲一区美女视频在线观看免费 | 久久艹在线观看 | 九九九热精品免费视频观看 | 日韩美一区二区三区 | 久久精品999 | 黄色片网站大全 | 99热 精品在线 | 免费亚洲视频 | 亚州日韩中文字幕 | 国产日韩中文字幕在线 | 人人看人人做人人澡 | 国产精品一区二区三区四 | 91精品国产三级a在线观看 | 日韩电影在线观看中文字幕 | 成年人免费av | aaa毛片视频 | 亚洲精品av在线 | 三上悠亚一区二区在线观看 | 视频一区二区视频 | www.色午夜.com | 韩国av一区二区三区 | 黄色小说网站在线 | 人人澡人人爽欧一区 | 4438全国亚洲精品在线观看视频 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 天天色天天综合 | 9在线观看免费高清完整版 玖玖爱免费视频 | 黄污视频网站 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 91av在线看| 欧美日韩免费一区 | 国产在线欧美在线 | 99精品国自产在线 | 91亚洲精品久久久久图片蜜桃 | 丁香六月婷婷开心婷婷网 | 婷婷综合在线 | 在线观看视频一区二区三区 | 免费情趣视频 | 亚洲国产影院av久久久久 | 欧美日韩综合在线观看 | 麻豆免费视频观看 | 久久视频免费 | 中文在线最新版天堂 | 婷婷中文字幕在线观看 | 欧美日韩后 | 久久精品播放 | 日本中文字幕网 | 热久久国产精品 | 国产精品午夜在线观看 | av网站在线免费观看 | 亚洲高清在线精品 | 日韩精品第一区 | 久久精品精品 | 在线看片一区 | 五月天综合网站 | 99久久精品国产一区二区成人 | 黄色aa久久 | 国产黄色理论片 | 狠狠躁夜夜av | 久久99亚洲热视 | 日韩经典一区二区三区 | 91精品久久久久 | 日韩电影中文字幕在线 | 最近中文字幕mv | 欧美淫视频| 婷婷激情综合 | 国产色久 | 丁香六月激情婷婷 | 在线看的av网站 | 国产一级精品绿帽视频 | 91精品视频免费 | 亚洲国内精品在线 | 91成人看片| 国产不卡高清 | 国产小视频在线免费观看视频 | 久草视频在线看 | 欧美日韩有码 | 黄色a大片 | 国产专区精品 | 亚洲国产精品999 | 一级片免费在线 | 色婷婷激情电影 | 中文av字幕在线观看 | 婷婷色亚洲 | 国产午夜一区 | 精品嫩模福利一区二区蜜臀 | 最近免费中文字幕大全高清10 | 开心色激情网 | 中文字幕电影一区 | 婷婷伊人五月 | 天天做天天爱天天爽综合网 | 懂色av一区二区在线播放 | 国产一级在线免费观看 | 九色视频自拍 | 免费十分钟 | 国产精久久久久久久 | 久久公开视频 | 五月婷婷综合网 | av不卡网站 | 中文有码在线 | 在线午夜电影神马影院 | 日韩精品你懂的 | 天堂在线视频中文网 | 丁香婷婷综合激情 | 日韩理论片在线 | 亚洲激情综合 | 99久久婷婷国产精品综合 | av中文字幕网站 | 91大神精品视频在线观看 | 日韩网站在线看片你懂的 | 一区二区三区四区五区在线视频 | 欧美另类高清 videos | 免费亚洲婷婷 | 中文字幕一区二区三区四区在线视频 | 欧美精品一区二区蜜臀亚洲 | 精品色999| 欧美人体xx | 在线视频福利 | 精品国产乱码久久久久久1区2匹 | 91九色最新 | 9999在线| 男女激情片在线观看 | 国产一区二区三区免费在线 | 国内丰满少妇猛烈精品播放 | 五月天激情在线 | 日韩精品中文字幕久久臀 | 又黄又爽又无遮挡免费的网站 | 四虎永久免费网站 | 日韩在线免费高清视频 | 国产精品九九九九九 | 欧美亚洲一级片 | 99久久99久久精品国产片果冰 | 在线免费黄色片 | 成人av免费在线播放 | 深夜国产福利 | 天天色播 | 国产一级在线 | 国产精品日韩久久久久 | 久久免费看毛片 | 日本视频不卡 | 在线观看成人av | 精品国模一区二区三区 | 久久久久国产一区二区三区 | 日韩大陆欧美高清视频区 | 婷婷国产在线 | 精品久久久久亚洲 | 色99久久 | 在线观看一级 | 亚洲成人免费在线观看 | 久久免费国产精品1 | 国产精品一区欧美 | 日韩精选在线观看 | 免费成人结看片 | 一级黄色电影网站 | 国产免费成人av | 国产日韩欧美在线一区 | 人人精久 | 久久老司机精品视频 | 九七视频在线 | 国产精品毛片久久久久久久 | 视频二区在线 | 国产黄色免费 | 久久综合成人 | 国产我不卡 | 国产色资源 | 久久久黄色av | 久久欧美视频 | 青青久视频 | 玖玖爱在线观看 | 在线观看日本高清mv视频 | 亚洲另类视频在线观看 | 欧美激情视频一区二区三区免费 | 91大神精品视频在线观看 | 国产精品久久久久久久久久了 | 亚洲国产精品小视频 | 69国产盗摄一区二区三区五区 | 99c视频在线 | 99免费在线播放99久久免费 | 日一日干一干 | 国产打女人屁股调教97 | 91久久偷偷做嫩草影院 | 手机成人av | 日韩高清激情 | 很黄很色很污的网站 | 天天干天天干天天操 | 亚洲国产精品99久久久久久久久 | 日本一区二区三区视频在线播放 | 午夜精品一区二区三区在线 | 中文字幕av影院 | 六月丁香在线观看 | 一级黄色片在线播放 | 激情在线网址 | 四虎永久国产精品 | 中文字幕免费国产精品 | 天堂v中文 | 日韩在线电影一区二区 | 一区二区三区日韩在线 | 天天躁日日躁狠狠躁 | 国产成人精品久久久 | 超碰97久久 | 欧美视频www| 伊人干综合 | 狠狠色噜噜狠狠狠合久 | 国产一区二区久久 | 中文字幕一区二区三区四区久久 | av一级一片 | 国产视频2 | 国产精品久久久久一区二区国产 | 一区二区三区国 | 久久精品国产免费观看 | 久久久久久久久久久黄色 | 在线观看日本高清mv视频 | 五月综合在线观看 | 国产亚洲精品久久19p | 亚洲精品婷婷 | 久久99网站 | 精品在线观看免费 | 亚洲理论电影网 | 狠狠色噜噜狠狠狠合久 | 国产精品久久三 | www.国产在线 | 99爱国产精品 | 国内精品久久久久久久久久久久 | 99精品在线免费视频 | 91精品毛片 | 中文字幕观看在线 | 欧美一级免费片 | 成年人在线观看网站 | 国产精品久久久久久av | 欧美视频在线观看免费网址 | av在线免费播放 | 天天射射天天 | 亚洲国产精品女人久久久 | 98超碰在线观看 | 日韩乱理 | 久久96 | 天天操天天色综合 | 国产高清视频在线播放 | 99久久综合狠狠综合久久 | 日本精品久久久一区二区三区 | 99热在线国产 | 久久久亚洲影院 | www.亚洲激情.com | 久久久麻豆 | 国产一级不卡视频 | 午夜精品久久久久久久99无限制 | 蜜臀av.com | 精品夜夜嗨av一区二区三区 | 视频国产一区二区三区 | 免费的黄色av | 色婷丁香| 国产日韩精品在线 | 欧美aaa视频 | 亚州日韩中文字幕 | 97超碰国产精品女人人人爽 | 成人免费观看大片 | 高清不卡免费视频 | 97超碰福利久久精品 | 二区三区视频 | 国产色网站 | 成人a视频片观看免费 | 国产精品麻豆一区二区三区 | 国产精品第7页 | 亚洲国产视频网站 | 免费观看黄 | 麻豆传媒视频观看 | 天天爽夜夜爽精品视频婷婷 | 91成人精品一区在线播放 | av888av.com | 欧美精品免费一区二区 | 国产精品久久久久久久免费观看 | 久久精品久久99 | 日日干日日操 | 中文字幕一区二区三区在线视频 | 久久成人精品 | av三级av | 丁香网五月天 | 亚洲妇女av | 精品一区在线看 | 青青草在久久免费久久免费 | 免费在线观看日韩视频 | 亚洲乱码精品久久久久 | 黄色aa久久 | 91 中文字幕| 精品黄色片 | 精品一区二区三区久久久 | 9999国产| 91久久奴性调教 | 91中文字幕视频 | 国产亚洲精品久久久久久移动网络 | 国产一二三区在线观看 | 在线观看国产麻豆 | 一区二区三区在线不卡 | 国产成人黄色网址 | 精品亚洲在线 | 日日夜夜综合网 | 国产精品一区二区久久精品爱微奶 | 人人干,人人爽 | 久久任你操 | 韩日精品在线 | 五月天狠狠操 | 这里只有精品视频在线观看 | 欧美地下肉体性派对 | 欧美婷婷色 | 国产一卡二卡在线 | 黄色中文字幕在线 | 综合色亚洲 | 免费视频一区 | 97人人超| 欧美韩日视频 | 国产精品福利视频 | 日日干日日操 | 黄色三级网站 | 免费看片在线观看 | 欧美日韩中文字幕视频 | 国产激情电影综合在线看 | 天天色综合三 | 在线观看精品一区 | 在线播放视频一区 | 在线日韩av| 国产日韩中文字幕 | 9草在线| 中文字幕免费高清在线观看 | 日韩精品久久久久久中文字幕8 | 中文字幕 在线看 | 国产精品一区二区久久久久 | 91av视频在线免费观看 | 亚洲成免费 | 丁香五月亚洲综合在线 | 日韩欧美视频二区 | 久久久综合精品 | 国产中文自拍 | 天天射天天干 | 欧美做受高潮电影o | 91精品视频网站 | 日韩在线视频免费看 | 国产精品精品视频 | 天天天在线综合网 | 久久久91精品国产一区二区三区 | www.com.黄 | 在线播放 日韩专区 | 亚洲jizzjizz日本少妇 | 免费国产一区二区 | 欧美天天综合网 | 91香蕉视频黄 | 久久精品这里都是精品 | 91亚洲精品久久久蜜桃 | 亚洲aⅴ在线 | 精品国产a| 国产精品久久一区二区三区, | 欧洲一区二区三区精品 | 亚洲一区视频免费观看 | 99久久久久| bbb搡bbb爽爽爽| 国产黄色一级片 | 亚洲女同ⅹxx女同tv | 91亚洲精品久久久中文字幕 | 九九久久免费视频 | 婷婷色在线播放 | 日韩在线免费播放 | 国产视频中文字幕 | 精品一区二区免费 | 婷婷在线视频观看 | 手机在线欧美 | 啪啪小视频网站 | 一区在线观看 | 久久99精品久久久久蜜臀 | 欧美日韩一区久久 | 在线看的av网站 | 国产一区二区在线免费播放 | 美女黄频在线观看 | 久久人操| 国产午夜精品理论片在线 | 精品久久一区 | 国产亚洲精品xxoo | 亚洲香蕉在线观看 | 丁香婷婷综合色啪 | 成年人免费在线观看网站 | 国产精品久久99综合免费观看尤物 | 91九色老| 国产成年人av | 中文字幕在线观看网站 | 免费视频91蜜桃 | av午夜电影 | 日韩精品91偷拍在线观看 | 日日夜夜天天 | 丁香在线| 亚洲精品午夜国产va久久成人 | www.国产毛片| 免费看三级黄色片 | 四虎国产精品免费 | 国产成人一区二区三区影院在线 | 91亚色在线观看 | 97超碰总站 | 青青草国产免费 | 久久亚洲影视 | 国产精品永久久久久久久www | 国产精品成人一区二区 | 日韩一级理论片 | 亚洲精品中文在线观看 | 香蕉久久久久 | 超碰人人草 | 日韩电影一区二区三区在线观看 | 中文字幕免费高清 | 去看片 | 免费在线观看的av网站 | 激情五月激情综合网 | 国产精品av免费观看 | 国产99久久精品一区二区永久免费 | 婷色在线 | 天天干 天天摸 天天操 | 免费看黄色毛片 | 久久免费的视频 | 在线视频日韩欧美 | 黄色视屏免费在线观看 | 最近最新中文字幕视频 | 黄色av一区二区三区 | 欧美日韩高清一区 | 五月网婷婷| 亚洲综合欧美日韩狠狠色 | 欧美日韩午夜在线 | 在线观看亚洲免费视频 | 欧美一级片播放 | 久久精品美女视频网站 | 久久久国产成人 | 久久久久免费精品视频 | 中文字幕欧美三区 | 成人中文字幕在线观看 | 久久久精品视频网站 | 亚洲精品综合欧美二区变态 | 91精品视频一区二区三区 | www激情久久 | www.午夜色.com | 国产精品毛片一区视频 | 国产一区高清在线观看 | 99久久久成人国产精品 | 国产高清久久久 | 又色又爽又黄高潮的免费视频 | 视频在线在亚洲 | 国模精品在线 | 麻豆视频一区二区 | 欧美超碰在线 | 亚洲人在线视频 | 久久久综合色 | 韩国一区视频 | 欧洲在线免费视频 | 青青草华人在线视频 | 色a4yy| 亚洲另类视频在线观看 | 精品国产亚洲一区二区麻豆 | 久久男人影院 | www.久久免费 | 国产手机视频在线播放 | 天天爽夜夜爽人人爽曰av | 国产精选在线 | 毛片888 | 久久综合狠狠狠色97 | 日韩精品免费在线观看 | 91在线www | 在线99| 天天色天天射综合网 | 亚洲精品中文在线观看 | 精品国产免费一区二区三区五区 | 国产91精品看黄网站在线观看动漫 | www五月天 | 在线电影91| 久久精品99国产国产 | aaa免费毛片| 日本中文字幕在线观看 | 国产99久久九九精品 | 青草视频在线免费 | 国产伦理精品一区二区 | 国产人成精品一区二区三 | 婷婷色在线资源 | 欧美日韩高清国产 | 日韩理论在线视频 | 4438全国亚洲精品观看视频 | 成人黄视频 | 深夜免费小视频 | 午夜视频播放 | 日韩中午字幕 | 四虎国产精品免费观看视频优播 | 亚洲国产欧美在线看片xxoo | 久久九九影视 | 久久精品电影网 | 中文字幕在线免费 | 久久精品网站视频 | 99久高清在线观看视频99精品热在线观看视频 | 久久爱综合 | 久久99精品国产麻豆宅宅 | 午夜av在线免费 | 日本精品久久久久久 | 久草精品视频 | 国产成人精品三级 | 亚洲精品久久久久中文字幕m男 | 日本黄色大片免费看 | 探花视频免费观看高清视频 | 欧美一二三视频 | 国产日韩欧美在线播放 | 久视频在线播放 | 2019中文在线观看 | 欧美日韩另类在线观看 | 91视频91色 | 国产99久久久精品视频 | 久草在线手机视频 | 国产无遮挡猛进猛出免费软件 | 国产一区视频免费在线观看 | 在线免费观看成人 | 免费看十八岁美女 | 国产亚洲精品综合一区91 | 超碰在线最新 | 欧美成人黄 | 久久久久国产精品免费免费搜索 | 亚洲黄色片 | 亚洲全部视频 | 五月婷婷激情五月 | 亚洲视频分类 | 视频一区二区在线观看 | 香蕉久草在线 | 91麻豆精品国产91久久久更新时间 | 99精品欧美一区二区三区 | 欧美另类成人 | av在线直接看 | www欧美日韩 | 激情视频网页 | 999久久a精品合区久久久 | 久久精品视频一 | 国内综合精品午夜久久资源 | 欧美日韩一区二区三区不卡 | 久久一区二区免费视频 | 国产精品久久一区二区三区不卡 | 成人久久精品 | 久久精品美女 | 婷婷色5月| 国产一区在线免费 | 久草视频网 | 最近中文字幕第一页 | 丁香综合五月 | 欧美成人影音 | 国产精久久久久久妇女av | 日韩精品一区不卡 | 亚洲欧美日韩在线一区二区 | japanesefreesex中国少妇 | 中文字幕在线观看一区 | 日韩免费一区二区 | 国产永久免费观看 | 久久免费看a级毛毛片 | 国产美女永久免费 | 69国产盗摄一区二区三区五区 | 亚州性色| 久久综合在线 | 国产精品视频永久免费播放 | 日韩精品在线视频免费观看 | 久草在线视频首页 | av福利免费 | 免费观看9x视频网站在线观看 | 97超碰福利久久精品 | 91完整版观看 | 日韩中文字幕视频在线观看 | 91av色 | 狠狠操在线 | 久久国产精品一区二区 | 成+人+色综合 | 在线欧美日韩 | 精品国产网址 | 亚洲精品美女久久久久网站 | 亚州精品一二三区 | 香蕉视频91 | 99精品黄色 | 国产精品原创在线 | 狠狠干天天 | 日日夜夜天天干 | 国产精品成人免费精品自在线观看 | av综合网址 | 97理论片| 操操综合网 | 色婷婷亚洲婷婷 | 国产精品专区在线观看 | 久久久久久久电影 | 久久黄色片| 精品字幕在线 | 又黄又爽的免费高潮视频 | 久久亚洲免费视频 | 日韩黄在线观看 | 久久精品国产精品亚洲精品 | 一级性生活片 | 九九免费在线看完整版 | 中文字幕一区二区三区在线视频 | 天天摸天天干天天操天天射 | 国产精品久久久久久久久费观看 | 国产日韩在线视频 | 国产第页 | 久久理论电影网 | 日日干av | 国产免费专区 | 久久艹影院 | 成人高清在线观看 | 免费www视频 | 精品福利在线视频 | 成人在线视频在线观看 | 国产麻豆精品在线观看 | 成人影音在线 | 日本精品久久久一区二区三区 | 国产福利91精品张津瑜 | 亚洲精品视频www | 日韩av免费观看网站 | 婷婷成人综合 | 色在线网| 婷婷色网| 麻豆视频在线观看免费 | 精品99免费视频 | 日韩网站一区二区 | 婷婷色网视频在线播放 | 国产精品大片免费观看 | av看片网址|