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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

flask框架初学-10-restful代码风格

發布時間:2024/1/1 编程问答 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 flask框架初学-10-restful代码风格 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

REST是一種軟件架構模式,它的核心概念包括:資源,資源在REST中代表的是URL,表示一個網絡實體。它的使用可以使操作關系變得更加有序,增強URL的可讀性,使資源描述與視圖松耦合,并且可以提供OpenAPI,便于第三方集成等。下面就來講講flask的restful代碼風格

首先,需要引入flask-restful資源包

from flask_restful import *

引入包后將進入正式的使用環節,包括以下三個基本步驟

# 在restful風格中想返回中文,需要取消ascii編碼的配置 app.config["RESTFUL_JSON"] = {"ensure_ascii": False}# 1、創建組件對象 組件對象 = Api(app)# 定義返回數據格式輸出 types_fields = {'id': fields.Integer,'name': fields.String(attribute='type_name') }# 創建解析對象 type_parser = reqparse.RequestParser() # 添加解析后的入參 type_parser.add_argument('typeName',type=str,required=True,help='必須添加新聞分類名',location='form')# 2、定義類視圖 class 自定義視圖類(Resource):# 給指定函數添加指定的裝飾器method_decorators = {"get": [mydecorator1, mydecorator2],"post": [mydecorator2]}# 使用marshal序列化返回字典類型1@marshal_with(types_fields)def get(self):types = NewsType.query.all()return typesdef post(self):# 獲取入參 args = type_parser.parse_args()typeName = args.get('typeName')# 操作數據newsType = NewsType()newsType.Type_name = typeNamedb.session.add(newsType)db.session.commit()# 使用marshal序列化返回字典類型2 [newsType:type_fields]return marshal(newsType,types_fields)# 3、組件添加類視圖 組件對象.add_resource(視圖類, URL資源段)

Example

項目架構(此處沒有編寫相應的html,可根據需求與前幾章內容自行補充)

app.py

from flask_migrate import Migrate, MigrateCommand from flask_script import Manager from app.models.news_model import * from app.models.user_model import *import flask_caching.backendsfrom app import create_app from exts import dbapp = create_app()manager = Manager(app=app)migrate = Migrate(app=app,db=db) manager.add_command('db',MigrateCommand)if __name__ == '__main__':manager.run()

settings.py

import osclass Config:DEBUG = TrueSQLALCHEMY_DATABASE_URI = 'mysql://root:123456@127.0.0.1:3306/newsdb'SQLALCHEMY_TRACK_MODIFICATIONS = TrueSQLALCHEMY_ECHO = True# secret_key加密碼SECRET_KEY = 'JIAMIMA'RECAPTCHA_PUBLIC_KEY = "SHAJDGBCYSDCUDUSAD"RECAPTCHA_PRIVATE_KEY = "AUERHDNSBDSDSADSLADDQ"RECAPTCHA_PARAMETERS = {'hl':'zh','render':'explicit'}RECAPTCHA_DATA_ATTRS = {'theme':'dark'}# 項目路徑BASE_DIR = os.path.dirname(os.path.abspath(__file__))# 靜態文件夾的路徑STATIC_DIR = os.path.join(BASE_DIR,'static')TEMPLATE_DIR = os.path.join(BASE_DIR,'templates')# 頭像的上傳目錄UPLOAD_ICON_DIR = os.path.join(STATIC_DIR,'upload/icon')# 相冊的上傳目錄UPLOAD_PHONE_DIR = os.path.join(STATIC_DIR,'upload/phone')class DevelopmentConfig(Config):ENV = 'development'DEBUG = Trueclass ProductionConfig(Config):ENV = 'production'DEBUG = True

exts下的init.py

from flask_caching import Cache from flask_cors import CORS from flask_restful import Api from flask_sqlalchemy import SQLAlchemy import pymysql pymysql.install_as_MySQLdb()db = SQLAlchemy() cors = CORS() cache = Cache()

app下的init.py

from flask import Flask from app.apis.news_api import news_bp from app.apis.user_api import user_bp from exts import db, cors, cache from settings import DevelopmentConfigconfig = {'CACHE_TYPE': 'redis','CACHE_REDIS_HOST': '127.0.0.1','CACHE_REDIS_PORT': 6379 }def create_app():app = Flask(__name__,static_folder='../static',template_folder='../templates')app.config.from_object(DevelopmentConfig)db.init_app(app=app)cors.init_app(app=app,supports_credentials=True)cache.init_app(app=app,config=config)app.register_blueprint(news_bp)app.register_blueprint(user_bp)return app

utils下的init.py

from random import randomfrom flask import request, g from flask_restful import abortfrom app.models.user_model import User from app.utils.smssend import SmsSendAPIDemo from exts import cachedef sendMessage(phone):SECRET_ID = "********" # 產品密鑰ID,產品標識SECRET_KEY = "************" # 產品私有密鑰,服務端生成簽名信息使用,請嚴格保管,避免泄露BUSINESS_ID = "***************" # 業務ID,易盾根據產品業務特點分配api = SmsSendAPIDemo(SECRET_ID,SECRET_KEY,BUSINESS_ID)# secret_pair = SecretPair(SECRET_ID,SECRET_KEY)# api = SmsSendAPIDemo(BUSINESS_ID,secret_pair)# 隨機產生驗證碼code = ""for i in range(4):ran = random.randint(0,9)code += str(ran)params = {"mobile": phone,"templateId": "10084","paramType": "json","params": {'code':code,'time':'20211224'}# 國際短信對應的國際編碼(非國際短信接入請注釋掉該行代碼)# "internationalCode": "對應的國家編碼"}ret = api.send(params)return ret,codedef check_user():auth = request.headers.get('Authorization')if not auth:abort(401, msg = '請先登錄')mobile = cache.get(auth)if not mobile:abort(402, mag = '無效的令牌')user = User.query.filter(User.phone==mobile).first()if not user:abort(403, msg = '此用戶已被管理員刪除!')g.user = userdef login_required(func):def wrapper(*args,**kwargs):check_user()return func(*args,**kwargs)return wrapper

smssend.py

import hashlib from hashlib import md5 import json import random import time import urllib import urllib.requestclass SmsSendAPIDemo(object):API_URL = "https://sms.dun.163.com/v2/sendsms"VERSION = "v2"def __init__(self, secret_id, secret_key, business_id):"""Args:secret_id (str) 產品密鑰ID,產品標識secret_key (str) 產品私有密鑰,服務端生成簽名信息使用business_id (str) 業務ID,易盾根據產品業務特點分配"""self.secret_id = secret_idself.secret_key = secret_keyself.business_id = business_iddef gen_signature(self, params=None):"""生成簽名信息Args:params (object) 請求參數Returns:參數簽名md5值"""buff = ""for k in sorted(params.keys()):buff += str(k) + str(params[k])buff += self.secret_keyreturn hashlib.md5(buff.encode("utf-8")).hexdigest()def send(self, params):"""請求易盾接口Args:params (object) 請求參數Returns:請求結果,json格式"""params["secretId"] = self.secret_idparams["businessId"] = self.business_idparams["version"] = self.VERSIONparams["timestamp"] = int(time.time() * 1000)params["nonce"] = int(random.random() * 100000000)params["signature"] = self.gen_signature(params)try:params = urllib.parse.urlencode(params)params = params.encode('utf-8')request = urllib.request.Request(self.API_URL, params)content = urllib.request.urlopen(request, timeout=5).read()return json.loads(content)# response = request.post(self.API_URL, data=params)# return response.json()except Exception as ex:print("調用API接口失敗:", str(ex))if __name__ == "__main__":"""示例代碼入口"""SECRET_ID = "***********" # 產品密鑰ID,產品標識SECRET_KEY = "***************************" # 產品私有密鑰,服務端生成簽名信息使用,請嚴格保管,避免泄露BUSINESS_ID = "*******************************" # 業務ID,易盾根據產品業務特點分配api = SmsSendAPIDemo(SECRET_ID, SECRET_KEY, BUSINESS_ID)params = {"mobile": "15010185644","templateId": "10084","paramType": "json","params": "{'code':200','time':'20211224'}"# 國際短信對應的國際編碼(非國際短信接入請注釋掉該行代碼)# "internationalCode": "對應的國家編碼"}ret = api.send(params)if ret is not None:if ret["code"] == 200:taskId = ret["data"]["taskId"]print("taskId = %s" % taskId)else:print ("ERROR: ret.code=%s,msg=%s" % (ret['code'], ret['msg']))

models下的user_model.py

from app.models import BaseModel from exts import dbclass User(BaseModel):username = db.Column(db.String(50),nullable=False)password = db.Column(db.String(128),nullable=False)phone = db.Column(db.String(11),unique=True,nullable=False)icon = db.Column(db.String(256))newsList = db.relationship('News',backref='author')comment = db.relationship('Comment',backref='user')replys = db.relationship('Reply',backref='user')def __str__(self):return self.username

models下的news_model.py

from app.models import BaseModel from exts import dbclass NewsType(BaseModel):__tablename__='news_type'type_name = db.Column(db.String(50),nullable=False)newsList = db.relationship('News',backref='newstype')class News(BaseModel):__tablename__ = 'news'title = db.Column(db.String(100),nullable=False)content = db.Column(db.Text,nullable=False)desc = db.Column(db.String(255),nullable=False)news_type_id = db.Column(db.Integer,db.ForeignKey('news_type.id'))user_id = db.Column(db.Integer,db.ForeignKey('user.id'))comments = db.relationship('Comment',backref='news')def __str__(self):return self.titleclass Comment(BaseModel):__tablename__ = 'comment'content = db.Column(db.String(255),nullable=False)love_num = db.Column(db.Integer,default=0)user_id = db.Column(db.Integer,db.ForeignKey('user.id'))news_id = db.Column(db.Integer,db.ForeignKey('news.id'))replys = db.relationship('Reply',backref='replys')def __str__(self):return self.contentclass Reply(BaseModel):__tablename__ = 'reply'content = db.Column(db.String(255), nullable=False)love_num = db.Column(db.Integer, default=0)user_id = db.Column(db.Integer, db.ForeignKey('user.id'))comment_id = db.Column(db.Integer,db.ForeignKey('comment.id'))def __str__(self):return self.content

apis下的user_api.py

import uuid from random import randomfrom flask import Blueprint, jsonify, session, render_template from flask_restful import Api, Resource, reqparse, inputs, fields, marshal from werkzeug.security import generate_password_hash, check_password_hashfrom app.models.user_model import User from app.utils import sendMessage from exts import cache, dbuser_bp = Blueprint('user',__name__)api = Api(user_bp) sms_parser = reqparse.RequestParser() sms_parser.add_argument('mobile',type=inputs.regex(r'^1[356789]\d{9}$'),required=True,help='手機號碼格式錯誤',location=['form','args'])class toIndexApi(Resource):def get(self):return render_template('test.html')# 發送手機驗證碼 class SendMessageApi(Resource):def post(self):args = sms_parser.parse_args()mobile = args.get()ret,code = sendMessage(mobile)if ret is not None:if ret["code"] == 200:cache.set(mobile+"_code_l", code, timeout=180)return jsonify(cood=200,msg='短信發送成功!')else:print ("ERROR: ret.code=%s,msg=%s" % (ret['code'], ret['msg']))return jsonify(cood=200, msg='短信發送失敗!')return {'status':400,'msg':'驗證碼f發送有誤'}# 輸入 loginRegister_parser = sms_parser.copy() loginRegister_parser.add_argument('code',type=inputs.regex(r'^\d{4}$'),help='必須輸入四位數字驗證碼',required=True,location=['form','args']) # 輸出 user_fields = {'id': fields.Integer,'username': fields.String } # 用戶的登錄和注冊 class LoginAndRegisterApi(Resource):def post(self):args = loginRegister_parser.parse_args()mobile = args.get('mobile')code = args.get('code')cache_code = cache.get(mobile+'_code_l')if cache and code == cache_code:# 數據庫查詢是否存在相應的mobileusers = User.query.filter(User.phone==mobile).all().first()if not users:# 注冊處理user = User()user.phone = mobiles = ''for i in range(13):ran = random.randint(0.9)s += str(ran)user.username = '用戶' + sdb.session.add(user)db.session.commit()# 登陸處理 記住登錄狀態:session,cookie,cache(redis)# 說明用戶是登陸成功的token = str(uuid.uuid4()).replace('-', '') + str(random.randint(100, 999))# 存儲用戶的登錄信息cache.set(token, mobile)# cache.set(mobile+'_status',1)data = {'status': 200,'msg': '用戶登錄成功!','token': token,'users': marshal(users,user_fields) # 輸出的內容定制}return dataelse:return {'errormsg':'驗證碼錯誤','status': 400}# 忘記密碼 class ForgetPasswordApi(Resource):def get(self):s = 'qwertyuiopasdfghjklzxcvbnmMNBVCXZLKJHGFDSAPOIUYTREWQ1234567890'code = ' 'for i in range(4):ran = random.choice(s)code += ran# 保存codesession['code'] = codereturn {'code': code}# 申請重置密碼的輸入 reset_parser = reqparse.RequestParser() reset_parser.add_argument('imageCode',type=inputs.regex(r'^[a-zA-Z0-9]{4}$'),help='必須輸入正確格式的驗證碼',location=['form','args']) # 申請重置密碼 class ResetPasswordApi(Resource):def get(self):args = reset_parser.parse_args()mobile = args.get('mobile')imageCode = args.get('imageCode')code = session.get('code')if code and imageCode.lower() == code.lower():# 判斷手機號碼user = User.query.filter(User.phone == mobile).first()if user:# 發送手機驗證碼ret, smscode = sendMessage(mobile)if ret is not None:if ret["code"] == 200:cache.set(mobile + "_code_r", smscode, timeout=180)return jsonify(status=200, msg='短信發送成功!')else:print("ERROR: ret.code=%s,msg=%s" % (ret['code'], ret['msg']))return jsonify(status=200, msg='短信發送失敗!')else:return {'status':400,'msg':'驗證碼發送有誤'}else:return {'status':400,'msg':'此用戶未注冊,請先注冊!'}else:return {'status':400,'msg':'驗證碼輸入有誤或者超時'}# 更新密碼 # 客戶端要傳入的信息 update_parser = loginRegister_parser.copy() update_parser.add_argument('password',type=inputs.regex(r'^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[a-zA-Z0-9]{8,10}$'),help='必須輸入包含大小寫字母和數字組合,不能使用特殊字符',location='form') update_parser.add_argument('repassword',type=inputs.regex(r'^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[a-zA-Z0-9]{8,10}$'),help='必須輸入包含大小寫字母和數字組合,不能使用特殊字符',location='form')class UpdatePasswordApi(Resource):def post(self):args = update_parser.parse_args()code = args.get('code')mobile = args.get('mobile')cache_code = cache.get(mobile+'_code_r')# 判斷驗證碼是否正確if code and cache_code.low() == code.lower():user = User.query.filter(User.phone == mobile).first()password = args.get('password')repassword = args.get('repassword')# 判斷兩次密碼是否一樣if password == repassword:user.password = generate_password_hash(password)db.session.commit()return {'status':200,'msg':'設置密碼成功!'}else:return {'status':400,'msg':'兩次密碼不一致!'}else:return {'status':400,'msg':'驗證碼有誤!'}# 賬號密碼登錄 # 設置需要前端傳入的內容 password_login_parser = sms_parser.copy() password_login_parser.add_argument('password',type=str,help='必須輸入密碼',required=True,location='form') class PasswordLoginApi(Resource):def post(self):args = password_login_parser.parse_args()mobile = args.get('mobile')password = args.get('password')# 判斷用戶user = User.query,filter(User.phone == mobile).first()if user:if check_password_hash(user.password,password):# 說明用戶是登陸成功的token = str(uuid.uuid4()).replace('-','')+str(random.randint(100,999))# 存儲用戶的登錄信息cache.set(token,mobile)# cache.set(mobile+'_status',1)return {'status':200,'msg':'用戶登錄成功!','token':token}return {'status':400,'msg':'賬戶名或密碼有誤!'}# 訪問首頁 api.add_resource(toIndexApi,'/index') # 發送手機驗證碼 api.add_resource(SendMessageApi,'/sms') # 用戶的登錄和注冊 api.add_resource(LoginAndRegisterApi,'/code_login') # 忘記密碼 api.add_resource(ForgetPasswordApi,'/forget_password') # 申請重置密碼 api.add_resource(ResetPasswordApi,'/reset_password') # 重置密碼 api.add_resource(UpdatePasswordApi,'/update_password') # 賬號密碼登錄 api.add_resource(PasswordLoginApi,'/pwdlogin')

apis下的news_api.py

from flask import Blueprint, app, g from flask_restful import Api, Resource, fields, marshal_with, reqparse, marshalfrom app.models.news_model import NewsType, News from app.utils import login_required from exts import dbnews_bp = Blueprint('news',__name__,url_prefix='/news') api = Api(news_bp)# 新聞類型輸出格式 types_fields = {'id': fields.Integer,'name': fields.String(attribute='type_name') } # 新聞類型添加傳入 type_parser = reqparse.RequestParser() type_parser.add_argument('typeName',type=str,required=True,help='必須添加新聞分類名',location='form') # 新聞類型修改傳入 update_type_parser = type_parser.copy() update_type_parser.add_argument('id',type=int,required=True,help='必須要添加修改的新聞分類id') # 新聞類型刪除傳入 delete_type_parser = reqparse.RequestParser() delete_type_parser.add_argument('id',type=int,required=True,help='必須要添加修改的新聞分類id') # 新聞類型api class NewsTypeApi(Resource):@marshal_with(types_fields)def get(self):types = NewsType.query.all()# print(app.url_map)return types# 使用post添加新聞類型def post(self):args = type_parser.parse_args()typeName = args.get('typeName')# 數據庫添加newsType = NewsType()newsType.Type_name = typeNamedb.session.add(newsType)db.session.commit()return marshal(newsType,types_fields)# 修改分類名稱def put(self):args = update_type_parser.parse_args()typeId = args.get('id')new_type_name = args.get('typeName')type_obj = NewsType.query.get(typeId)if type_obj:type_obj.type_name = new_type_namedb.session.commit()data = {'status': 200,'msg': '修改成功','type': marshal(type_obj,types_fields)}else:data={'status': 400,'msg': '類型查找失敗!',}return data# 刪除分類名稱def delete(self):args = delete_type_parser.parse_args()typeId = args.get('id')type_obj = NewsType.query.get(typeId)if type_obj:db.session.delete(type_obj)db.session.commit()data = {'status': 200,'msg': '類型刪除成功!',}else:data = {'status': 400,'msg': '類型刪除失敗!',}return datanews_parser = reqparse.RequestParser() news_parser.add_argument('typeid',type=int,help='必須添加新聞類型id',required=True) news_parser.add_argument('page',type=int)# 自定義fields class AuthorName(fields.Raw):def format(self,value):return value.username# 每條新聞的格式 news_fields = {'id': fields.Integer,'title': fields.String,'desc': fields.String,'datetime': fields.DateTime(attribute='date_time'),'author': AuthorName(attribute='author'),'url': fields.Url('newdetail',absolute=True) # absolute=True代表絕對路徑 }# 新聞api class NewsListApi(Resource):# 獲取某個新聞分類下的新聞def get(self):args = news_parser.parse_args()typeid = args.get('typeid')page = args.get('page',1)# newsType = NewsType.query.get(typeid)pagination = NewsType.query.filter(NewsType.id==typeid).paginate(page=page,per_page=8)data = {'has_more': pagination.has_next,'data': marshal(pagination.items,news_fields),'return_count': len(pagination.items),'html': 'null'}return data# 回復的格式 reply_fields = {'user': AuthorName(attribute='user'),'content': fields.String,'datetime': fields.DateTime(attribute='date_time'),'lovenum': fields.Integer(attribute='love_num') } # 評價的格式 comment_fields = {'user': AuthorName(attribute='user'),'content': fields.String,'datetime': fields.DateTime(attribute='date_time'),'lovenum': fields.Integer(attribute='love_num'),'replys': fields.List(fields.Nested(reply_fields)) } news_detail_fields = {'id': fields.Integer,'title': fields.String,'content': fields.String,'datetime': fields.DateTime(attribute='date_time'),'author': AuthorName(attribute='author'),'comment': fields.List(fields.Nested(comment_fields)) }class NewsDetailApi(Resource):@marshal_with(news_detail_fields)def get(self,id):news = News.query.get(id)return newsdef post(self):pass# 定義新聞發布的傳入 add_news_parser = reqparse.RequestParser() add_news_parser.add_argument('title',type=str,required=True,help='必須填寫新聞標題') add_news_parser.add_argument('content',type=str,required=True,help='必須填寫新聞主體內容') add_news_parser.add_argument('typeid',type=int,required=True,help='必須填寫新聞類型id')class NewsApi(Resource):@login_requireddef post(self):args = add_news_parser.parse_args()title = args.get('title')content = args.get('content')typeId = args.get('typeid')news = News()news.title = titlenews.content = contentnews.news_type_id = typeIdnews.desc = content[:100]+'......'news.user_id = g.user.iddb.session.add(news)db.session.commit()data = {'status': 200,'msg': '新聞發布成功!','news': marshal(news,news_detail_fields)}return datadef patch(self):passdef put(self):passdef delete(self):passapi.add_resource(NewsTypeApi,'/types') api.add_resource(NewsListApi,'/newslist') api.add_resource(NewsDetailApi,'/newsdetail/<int:id>','newsdetail') api.add_resource(NewsApi,'/news')

總結

以上是生活随笔為你收集整理的flask框架初学-10-restful代码风格的全部內容,希望文章能夠幫你解決所遇到的問題。

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

亚洲精品一区二区三区在线观看 | 国产美女精品视频免费观看 | 国产麻豆传媒 | 亚洲h在线播放在线观看h | 91手机在线看片 | a级黄色片视频 | 九九日韩 | 亚洲成av人影片在线观看 | 亚洲精品乱码久久久久久蜜桃不爽 | 亚洲精选视频在线 | 国产一区二区不卡视频 | 色综合久久88色综合天天6 | 精品中文字幕视频 | 久久久99精品免费观看乱色 | 超级碰99| 日韩在线第一 | 在线亚洲成人 | 日本三级吹潮在线 | 热久久免费国产视频 | 亚洲国产精品成人av | 美女视频一区 | 日韩欧美在线视频一区二区三区 | 国产特黄色片 | 97在线视频免费 | 久久综合成人网 | 成年人视频在线观看免费 | 中文字幕亚洲欧美 | 色视频网址 | 91网页版免费观看 | 国产精品12345 | 久久久久成人免费 | 91在线免费看片 | 久久在草 | 色五婷婷 | 亚洲精品播放 | 在线观看成人小视频 | 国产精品乱码久久久久久1区2区 | 黄色小说免费在线观看 | 欧美另类tv | 久久a级片 | 久99久视频 | 黄色网大全 | 日日操操 | 亚洲三级在线免费观看 | 在线观看免费版高清版 | 五月婷婷国产 | 中文字幕xxxx| 久草在线综合 | www久久com | 精品在线你懂的 | 欧美韩国日本在线观看 | 一区二区激情视频 | 亚洲一级电影在线观看 | 日韩精品第1页 | 国产午夜精品福利视频 | 国产不卡视频在线 | 亚洲另类视频在线 | 免费污片| 最近中文字幕第一页 | 免费看的黄色网 | 狠狠天天| 国产原厂视频在线观看 | 国产精品麻豆免费版 | 91av小视频 | 成人在线免费小视频 | 狠狠干狠狠久久 | a黄在线观看 | 波多野结衣精品在线 | 国产成人无码AⅤ片在线观 日韩av不卡在线 | 色小说av| 免费看的av片 | 国产99久久久国产精品成人免费 | 国产亚洲精品电影 | av综合av | 一区二区三区免费在线观看视频 | 免费在线观看成年人视频 | 色婷婷视频| 国产亚洲日本 | 欧美一区二区伦理片 | 亚洲观看黄色网 | 日韩在线观看视频中文字幕 | 色黄视频免费观看 | 欧美综合在线视频 | 国产视频中文字幕在线观看 | 一区在线免费观看 | 91成人在线观看高潮 | 久久久久欠精品国产毛片国产毛生 | 日韩欧美极品 | 手机在线中文字幕 | 女人魂免费观看 | 麻豆94tv免费版 | 五月婷网 | 欧美成人按摩 | 日韩精选在线 | 久草影视在线观看 | 成人手机在线视频 | 97操碰| 四虎影视成人永久免费观看亚洲欧美 | 国产精品女教师 | 在线涩涩 | 亚洲国产精品第一区二区 | 色视频网站在线 | 丁香花在线观看视频在线 | 日韩欧美成人网 | 偷拍区另类综合在线 | 欧美日韩国产精品一区二区亚洲 | 色狠狠婷婷| 亚洲狠狠干 | 国产伦理精品一区二区 | av888.com| 国产91成人| 激情欧美一区二区三区 | 一级片免费观看 | 三三级黄色片之日韩 | 视频二区在线视频 | 91完整版观看 | 在线观看亚洲精品 | 久久一区二区免费视频 | 操高跟美女 | 黄色av一区二区三区 | 久久久亚洲麻豆日韩精品一区三区 | 国产精品久久一区二区无卡 | 色综合久久精品 | 国产精品久久久久久999 | 久久综合久久综合这里只有精品 | 天天操夜夜逼 | 二区三区av | 91传媒在线 | 热久久国产精品 | av福利网址导航 | 2019免费中文字幕 | www.狠狠操.com | www.色com | 国产另类xxxxhd高清 | 美腿丝袜一区二区三区 | 欧美一级黄色网 | 成人羞羞视频在线观看免费 | 日韩中文字幕国产 | 在线韩国电影免费观影完整版 | 国产精品久久久久久久久久不蜜月 | 在线国产一区二区 | 久久精品视频在线免费观看 | 99热精品视 | 国产又粗又硬又爽的视频 | 日韩最新在线 | 欧美色一色 | 欧美日本在线视频 | 91亚洲在线观看 | 久久久久久久久国产 | 久久成电影 | 日韩欧美国产成人 | 伊人五月天综合 | 亚洲精品国精品久久99热一 | 久久精品视频一 | 国产人成精品一区二区三 | 午夜123 | 亚洲一区免费在线 | 亚洲a在线观看 | 久久久天天操 | 精品免费视频 | 免费能看的黄色片 | 操操综合 | 最新中文字幕在线观看视频 | 黄网站色欧美视频 | 看国产黄色大片 | 国产美女视频免费观看的网站 | 亚洲va天堂va欧美ⅴa在线 | 亚洲人在线视频 | 国产在线色站 | 手机成人在线 | 五月开心六月婷婷 | 99热在线看| 很黄很黄的网站免费的 | 久久夜靖品| 91视频久久久久 | 在线亚洲激情 | 亚洲综合色婷婷 | 少妇bbbb搡bbbb搡bbbb | 亚洲激情校园春色 | 国产精品久久网站 | 国产精品久久毛片 | 香蕉视频网站在线观看 | avove黑丝 | 91九色在线观看视频 | 国产精品第一视频 | 黄色的视频网站 | 亚洲精选视频免费看 | 三级av免费 | 在线精品在线 | 国产一区欧美在线 | 国产精品a久久久久 | 在线观看精品黄av片免费 | 激情丁香5月 | 99在线热播 | japanesefreesexvideo高潮 | 国产欧美精品xxxx另类 | 国产精品1区2区在线观看 | 福利视频一区二区 | 91香蕉视频污在线 | 91九色在线| 最新国产在线视频 | 国产精品一区二区视频 | 日韩午夜av | 久久婷婷一区二区三区 | 日韩在线国产精品 | 三级黄色片在线观看 | 欧美精品v国产精品v日韩精品 | 久久久久五月 | 日韩av不卡在线播放 | 久久深夜福利免费观看 | 久久福利在线 | 精品国产不卡 | 五月婷婷精品 | 九九视频免费观看视频精品 | 综合天天久久 | 久久黄色精品视频 | 久久久久久影视 | 福利片视频区 | 99在线观看免费视频精品观看 | 69亚洲乱 | 日韩一区二区在线免费观看 | 91精品麻豆| 视频在线99re | 国产成人在线精品 | 国产精品一区在线观看 | 亚洲专区一二三 | 日日爱网址| 国产亚洲精品久久 | 亚洲精品国产品国语在线 | 国产精久久久 | 99精品免费久久久久久久久 | 国产精品12| 四虎影视成人精品国库在线观看 | 日韩综合精品 | 97色免费视频 | 欧美性久久久 | 2018精品视频| 中文字幕在线观看网 | 欧美一级黄色片 | 久久精品一区二区三区视频 | 99 视频 高清| 一区二区三区四区精品视频 | 精品一区二区在线观看 | 欧美日韩精品二区第二页 | av免费网页| 亚洲电影网站 | 中文字幕区 | 最近中文字幕大全 | 久久夜夜夜| 月下香电影 | 九九精品在线观看 | 日本黄网站 | 91免费版在线观看 | 久热免费在线观看 | 在线观看中文字幕一区二区 | 国产不卡在线 | 精品二区视频 | 免费在线国产视频 | 欧美激情第28页 | 亚洲人人爱 | 91久久久久久久一区二区 | 亚洲第一区在线播放 | 99自拍视频在线观看 | 超碰精品在线观看 | 成片免费观看视频999 | 日韩一区二区三区免费电影 | 亚洲天堂网在线播放 | 亚州精品视频 | 日日爱夜夜爱 | 九色精品免费永久在线 | www.天天成人国产电影 | www.99在线观看 | 在线观看免费成人 | www.黄色片网站 | 精品国产一区二区三区四区在线观看 | 欧美色噜噜噜 | 狠狠干狠狠色 | 久久免费国产视频 | www黄色com| 婷婷干五月 | 亚州精品国产 | 波多野结衣最新 | 亚洲精品在线一区二区三区 | 五月激情在线 | 亚洲国内精品在线 | 人人干狠狠操 | 久久久久国产精品视频 | 500部大龄熟乱视频 欧美日本三级 | 精品久久久久久久久中文字幕 | 欧美日韩在线视频一区二区 | 91av九色| 成年人免费看片网站 | 亚洲欧美精品一区二区 | 中文字幕日韩一区二区三区不卡 | 亚洲免费专区 | 激情五月综合 | 欧美一区二区三区不卡 | 久久综合综合久久综合 | 九九免费精品视频 | 97成人资源 | 国产高清免费在线观看 | 日韩av成人免费看 | 9999在线| 国产999精品久久久久久绿帽 | 97人人添人澡人人爽超碰动图 | 日日日操操 | 国产xxxx性hd极品 | 一区二区三区在线不卡 | 黄色大全视频 | 在线免费黄网站 | 日韩69av| 五月激情片 | 豆豆色资源网xfplay | av亚洲产国偷v产偷v自拍小说 | 中文资源在线官网 | 成人av一区二区在线观看 | 美女福利视频在线 | 色婷婷国产在线 | 成人小视频在线播放 | 婷婷六月色 | 久久99偷拍视频 | 国产三级视频 | 精品一二三区 | 手机在线看a | 日本中文字幕在线电影 | 日本91在线 | 天天躁天天狠天天透 | 九草在线视频 | 中国精品一区二区 | 伊人久久电影网 | 91日韩在线播放 | 国产精品久久久久久久久久久久午夜 | 91亚洲欧美激情 | 国产精品毛片 | 午夜视频一区二区三区 | 青青河边草免费视频 | 国产人成在线视频 | 亚洲另类视频 | 日韩爱爱片 | 狠狠色伊人亚洲综合网站色 | 中文字幕人成乱码在线观看 | 国产精品va在线观看入 | 日韩xxxxxxxxx | 在线观看视频 | 久久国产热 | 特级西西www44高清大胆图片 | 免费在线精品视频 | 婷婷丁香六月 | 天天干天天想 | 亚洲aaa毛片 | 国产高清综合 | 久久午夜电影网 | 24小时日本在线www免费的 | 久久久久精 | 国产色小视频 | 国产99久久久国产精品免费看 | 亚洲欧美日本A∨在线观看 青青河边草观看完整版高清 | 日韩欧美国产视频 | 久久久久久久久爱 | 国产中文在线播放 | 狠狠色噜噜狠狠 | 久久九九免费 | 久久国产一二区 | 久久国产精品偷 | 久久免费播放视频 | 综合久久久久久 | 激情网第四色 | 毛片3| 中文字幕视频播放 | 久艹视频免费观看 | 久综合网| 在线观看岛国片 | 天天操天天摸天天干 | 久久国产精品99国产精 | 激情伊人五月天久久综合 | 免费看黄色91 | 国产欧美精品一区二区三区 | 国产人成一区二区三区影院 | 免费一级片视频 | 日韩欧美视频免费观看 | 亚洲狠狠操 | 国产精品综合在线 | 一本色道久久综合亚洲二区三区 | 国产拍揄自揄精品视频麻豆 | x99av成人免费| 国产成人精品av | 免费瑟瑟网站 | 久久美女电影 | 成人亚洲精品国产www | 激情狠狠干 | 天天搞夜夜骑 | 日韩伦理一区二区三区av在线 | 久久久久免费网 | 欧美成人h版| 成人黄大片 | 少妇性bbb搡bbb爽爽爽欧美 | 免费在线黄色av | 美女网站视频免费黄 | 亚洲中字幕 | 视频一区二区在线观看 | av观看免费在线 | 99热精品国产一区二区在线观看 | 91九色porn在线资源 | 国产日韩欧美在线观看视频 | 色五月色开心色婷婷色丁香 | 综合视频在线 | 在线精品视频在线观看高清 | 天天干天天干天天操 | 美女视频国产 | 国产香蕉97碰碰碰视频在线观看 | 精品9999 | 国产精品麻豆免费版 | 久久99久久精品国产 | 成人电影毛片 | 一本大道久久精品懂色aⅴ 五月婷社区 | 成人av电影在线 | 中文字幕 国产精品 | 99久久久国产精品 | 黄色av网站在线观看 | 免费毛片一区二区三区久久久 | 99久久综合国产精品二区 | 久久午夜国产精品 | 热久在线 | 国产精品地址 | 2023国产精品自产拍在线观看 | 久久久久免费视频 | 欧美日高清视频 | 91精品久久久久久综合五月天 | 夜添久久精品亚洲国产精品 | 国语久久 | 99精品在线免费在线观看 | 一级免费av | 亚洲国产精品成人va在线观看 | 国产成人精品久久久久蜜臀 | 精品亚洲欧美无人区乱码 | 伊人宗合| 97超碰在线播放 | 久久久综合 | 国产亚洲午夜高清国产拍精品 | www.亚洲精品在线 | 欧美另类一二三四区 | 中文字幕在线观看国产 | 日韩高清一 | 欧美韩国日本在线观看 | 国产精品av久久久久久无 | 亚洲国产中文字幕在线视频综合 | 97国产在线 | 91视频久久久久久 | 久久综合九色综合97婷婷女人 | 国产精品永久免费在线 | 丁香综合| 久久久久久久福利 | 波多野结衣一区三区 | 午夜精品久久久久久久99 | 日本精品一 | 国产精品1区2区在线观看 | 国产99在线免费 | 国产成人精品av在线观 | 99久久综合国产精品二区 | 亚洲欧美在线观看视频 | 久久艹中文字幕 | 国产系列精品av | 久久久久成人精品免费播放动漫 | av免费片 | 99在线视频免费观看 | 日韩免费一级a毛片在线播放一级 | 成人欧美日韩国产 | 九九热在线观看视频 | 国产精品九九热 | 欧美色综合久久 | 国产精品理论片在线播放 | 精品久久久久_ | 欧美日韩国产网站 | 国产精品入口a级 | 欧美成人精品三级在线观看播放 | 天天摸天天舔天天操 | 超级碰碰碰免费视频 | 亚洲视频在线免费观看 | 中文字幕视频 | 国产视频999 | 成人免费观看视频网站 | 精品久久久久久久久亚洲 | 欧美专区国产专区 | 在线观看免费国产小视频 | 啪一啪在线 | 国产精品福利在线观看 | 日日摸日日碰 | 色婷婷精品大在线视频 | 日韩国产欧美在线视频 | 视频一区久久 | 在线观看成人网 | 看国产黄色片 | 亚洲六月丁香色婷婷综合久久 | 在线 精品 国产 | 在线亚州| 全久久久久久久久久久电影 | 波多野结衣日韩 | 精品在线免费视频 | 久久夜视频 | av福利在线免费观看 | 国产中年夫妇高潮精品视频 | 91视频免费 | 国产xvideos免费视频播放 | 久久在线免费 | 国产综合香蕉五月婷在线 | 国产精品久久二区 | a视频在线播放 | 黄色免费大片 | 日韩精品一区二区三区在线播放 | 不卡精品视频 | 成人av免费电影 | 日韩专区 在线 | 亚洲伦理一区二区 | 久久精品99久久久久久 | 日韩精品欧美视频 | 久久www免费视频 | 综合色伊人 | 天天干天天操天天拍 | 久久午夜色播影院免费高清 | 欧美怡红院视频 | 手机看片国产日韩 | 国产成人精品一区二区三区在线观看 | 精品欧美日韩 | 91在线免费视频观看 | av五月婷婷 | 中文字幕久久精品 | a国产精品| 精品成人a区在线观看 | 亚洲视频免费在线观看 | 久久艹久久 | 伊人一级 | 国产专区日韩专区 | 午夜精品福利在线 | 黄www在线观看 | 欧美精品久久久久久久久免 | 久久99久久99精品 | 欧美亚洲另类在线视频 | 久久精品视频日本 | 色综合久久中文字幕综合网 | 国产视频18 | 最新av在线网站 | 亚洲资源 | 久草在线视频在线观看 | 久久久久久中文字幕 | 免费男女羞羞的视频网站中文字幕 | 综合网在线视频 | 国产亚洲精品v | 欧美a级免费视频 | 免费网站观看www在线观看 | 毛片3| 成人观看视频 | 啪啪av在线| 综合久久久久久 | 91av视频导航 | 日日夜夜精品免费观看 | 日本一区二区三区视频在线播放 | 丁香六月色 | 久久精国产 | 国产久草在线 | 亚洲免费观看在线视频 | 日韩精品视频在线观看免费 | 免费电影播放 | 久草在线视频免赞 | 日韩一级成人av | 四季av综合网站 | 日本精品va在线观看 | 99久久精品久久亚洲精品 | 久艹在线观看视频 | www免费在线观看 | 天堂在线免费视频 | 日本精品久久久久影院 | 91麻豆精品国产91久久久更新时间 | 最新日韩电影 | 日韩最新在线视频 | 97视频在线观看免费 | 国产精品18毛片一区二区 | 黄色一级动作片 | 丁香综合激情 | 人人爽人人av | 久久精品123 | 97视频在线观看网址 | 成年人免费在线观看网站 | 91亚洲精品视频 | 四虎成人精品永久免费av | 亚洲国产丝袜在线观看 | 欧美日韩性视频 | 久久久在线免费观看 | 亚洲 欧美 综合 在线 精品 | 婷婷视频在线观看 | 国产精品一区二区免费视频 | 一级片黄色片网站 | 午夜精品剧场 | 久久久国产精品亚洲一区 | 国产一级片不卡 | 天堂在线v| 国产91精品看黄网站在线观看动漫 | 日日草av| 中文成人字幕 | 亚洲九九九在线观看 | 国产另类av | 欧美一二三在线 | 国产在线中文字幕 | 久久精品一区二区三区四区 | 91精品黄色| 国产精品原创在线 | 亚洲精品久久久久久中文传媒 | 激情综合网五月婷婷 | 国产三级在线播放 | 成人免费在线观看av | 国产视频手机在线 | 亚洲天堂网在线播放 | 在线色亚洲 | 色婷婷福利视频 | 久久成人精品电影 | 久久国产精品99久久久久久丝袜 | 99久热在线精品 | 国产精品一区二区久久国产 | a级片网站 | 久久精品精品电影网 | 国产精品亚洲精品 | 夜夜操天天操 | 欧美午夜精品久久久久久孕妇 | 久久久久久久国产精品视频 | 久久精品视频网址 | 91热视频 | 欧美视频在线观看免费网址 | 日本女人在线观看 | 在线观看黄色大片 | 久久久久久久久久久久久影院 | 欧美国产精品一区二区 | 亚洲精品美女久久 | 日韩欧美精品免费 | 日本中文字幕一二区观 | 黄色的网站免费看 | 国产精品久久久久久久av大片 | 国产护士av | 国产精品成人av久久 | 精品夜夜嗨av一区二区三区 | 中文字幕欲求不满 | www久久 | 久久久亚洲电影 | 午夜电影 电影 | 亚洲视频在线免费看 | 免费不卡中文字幕视频 | 久久综合爱 | 丁香婷婷激情网 | 五月婷婷欧美 | 色综合久久88色综合天天免费 | 日本精品视频在线观看 | 免费国产在线精品 | 日韩女同一区二区三区在线观看 | 亚洲aⅴ免费在线观看 | 91视视频在线直接观看在线看网页在线看 | 看片一区二区三区 | 人人爽人人乐 | 欧美激情综合五月色丁香小说 | 精品国产人成亚洲区 | 久久99精品一区二区三区三区 | 97人人澡人人爽人人模亚洲 | 天天干视频在线 | 日韩精品一区在线观看 | 国产精品久久中文字幕 | 欧美国产精品久久久久久免费 | 黄色在线观看www | 久草在线免| 中文字幕在线看 | 国产69精品久久久久99尤 | 91爱看片| 免费看v片 | 色综合久久久久网 | 五月激情在线 | 久久国产电影 | 国产96在线观看 | 精品一区二区免费在线观看 | 亚洲一级在线观看 | 婷婷激情综合网 | 狠狠天天 | 国产精品手机播放 | 欧美伦理一区二区 | 免费中午字幕无吗 | 蜜臀av性久久久久蜜臀aⅴ流畅 | 伊人激情综合 | 一区二区av | 国产精品久久久久久久久久久久午夜 | 狠狠狠狠狠狠狠狠 | av免费网站 | 91久久在线观看 | 国产黄色在线观看 | 亚洲国产日韩一区 | 欧美国产一区在线 | 五月天久久精品 | 亚洲精品在线资源 | 久久全国免费视频 | 国产精品1024 | 99免费在线播放99久久免费 | 久久久高清免费视频 | 麻豆播放 | 日本在线观看一区二区三区 | 久久精品视频在线看 | 亚洲国产中文在线 | 日韩欧美在线中文字幕 | 久久精彩视频 | 婷婷中文在线 | 中文字幕高清在线播放 | 精品国产一区二区三区在线 | 一区二区三区在线免费播放 | 色射爱 | 亚洲精品在线二区 | 久久伊人爱 | 国产精品电影在线 | 亚洲精品国偷拍自产在线观看蜜桃 | 日日夜夜添| 麻豆传媒视频在线免费观看 | 色婷婷狠狠干 | 免费午夜视频在线观看 | 一区免费在线 | 91探花视频| 久草在线久 | 日韩字幕在线 | 日本高清中文字幕有码在线 | 超级碰碰免费视频 | 亚洲婷婷在线视频 | 精品亚洲va在线va天堂资源站 | 国产成人不卡 | 五月婷婷色播 | 国产一区麻豆 | 婷婷综合伊人 | 波多野结衣在线观看一区二区三区 | 91成人精品在线 | 91香蕉视频在线 | 中文字幕亚洲精品在线观看 | aaa毛片视频 | 久久人人爽人人爽人人 | 天天操天天操 | 中文在线字幕观看电影 | 久久久久久网站 | 精品一区二区免费在线观看 | 91自拍视频在线 | 午夜av免费看 | 91九色国产蝌蚪 | 日韩高清dvd | 伊人官网| 最近日本中文字幕a | 国产99久久久国产精品免费看 | 99热国产在线中文 | 久久精品www人人爽人人 | 亚洲麻豆精品 | 中文字幕在线免费观看视频 | 免费三及片| av在线最新 | 天天干人人 | 久久a v电影 | 麻豆精品传媒视频 | 97色婷婷人人爽人人 | 一本色道久久综合亚洲二区三区 | 欧美性生活大片 | 国产九九热视频 | 探花在线观看 | www四虎影院 | 国产日韩中文字幕 | 日韩 国产 | 中文字幕在线视频一区二区 | 在线观看av网 | 日韩中文字幕在线观看 | 91亚洲精 | 亚洲综合视频网 | 欧美激情奇米色 | 97超碰中文 | 久久香蕉国产精品麻豆粉嫩av | 色五丁香 | 99视频久 | 久久激情视频免费观看 | 日韩一区视频在线 | 久久精选 | 91精品办公室少妇高潮对白 | 一区二区三区免费在线播放 | 久久久免费网站 | 成人欧美亚洲 | 国产理伦在线 | 综合天天| 亚洲精品视频免费看 | 久久久久免费观看 | 91在线色| 99亚洲精品在线 | 美女免费视频网站 | 久久精品一区二区三区国产主播 | 久久国产精品99国产精 | 就要干b| 国产精品国产三级在线专区 | 草久久av | 日韩成人邪恶影片 | 免费麻豆网站 | av免费看av| 国产精品9999 | 九九热在线视频 | 色综合天天综合 | 免费亚洲黄色 | 96亚洲精品久久 | 五月婷婷综合在线视频 | 日本成人中文字幕在线观看 | 久久这里只有精品23 | 天天色天天上天天操 | 99久久精品日本一区二区免费 | 亚洲人在线 | 日韩理论片中文字幕 | 91视频午夜 | 欧美激情va永久在线播放 | 久久首页 | 激情五月综合 | 99国产精品视频免费观看一公开 | 国内丰满少妇猛烈精品播放 | 亚洲三级视频 | 国内视频1区 | 色一级片 | 免费在线观看日韩 | 日韩精品视频网站 | 麻花豆传媒mv在线观看网站 | 欧美大片大全 | 激情久久五月 | 国产亚洲一区 | 亚洲午夜精品久久久久久久久久久久 | 欧美午夜剧场 | 久久经典国产视频 | 狠狠操狠狠干天天操 | 91视频在线观看大全 | 久久国产高清视频 | 日日夜夜天天久久 | 亚洲精品一区二区三区四区高清 | 欧美 日韩 国产 成人 在线 | 天天插狠狠插 | 国产污视频在线观看 | 天天曰夜夜操 | 国产精品1000 | 激情视频网页 | 99re6热在线精品视频 | 99精品国产成人一区二区 | 亚洲天天看 | 国产一级免费在线 | www色,com| 日韩精品一区二区三区视频播放 | 久久久久综合 | 九九在线视频免费观看 | 色 免费观看 | 国产精品1区2区3区在线观看 | 国产123区在线观看 国产精品麻豆91 | 日韩精品久久久免费观看夜色 | 中文字幕免费在线 | 免费av观看 | 九色激情网 | 国产一卡在线 | 丁香婷婷色月天 | 成年人免费观看国产 | 亚洲黄色精品 | 在线视频黄 | 99精品一区 | 婷婷丁香激情 | 天堂av最新网址 | 久久av观看| 国产又粗又猛又爽又黄的视频先 | 久久精品3| 区一区二区三区中文字幕 | 久久综合9988久久爱 | av在线免费观看网站 | wwwww.国产 | 69av国产| 久久久免费观看完整版 | 国产一级黄色片免费看 | 五月天激情视频在线观看 | 在线免费亚洲 | 免费看v片 | 91免费网站在线观看 | av在线免费观看不卡 | 黄色综合 | 中文字幕在线观看网 | 国产一区二区久久久久 | 欧美了一区在线观看 | 国产精品久久久久aaaa | 国产精品免费视频久久久 | 亚洲亚洲精品在线观看 | 国产精品99免费看 | 欧美成人区| 国产最新91| 97福利视频| 日日干夜夜草 | 黄色软件视频网站 | 91mv.cool在线观看 | 亚洲欧美日韩在线一区二区 | 国外调教视频网站 | 午夜精品一区二区三区免费视频 | 激情五月婷婷综合 | 久久久久久久久久伊人 | 欧美日韩亚洲第一页 | 久久亚洲影视 | 超碰人人91| 在线观看韩日电影免费 | 欧美亚洲国产日韩 | 在线观看亚洲 | 亚洲 欧洲 国产 精品 | 中文电影网 | 日韩高清一区二区 | 久久天天躁狠狠躁夜夜不卡公司 | 亚洲欧美成人在线 | 亚洲国产精品成人va在线观看 | 色婷婷九月 | 91成年视频 | 欧美视屏一区二区 | 91激情视频在线观看 | 国产精品乱码高清在线看 | 欧美日韩一区二区三区视频 | 99av在线视频| 天天看天天干天天操 | 日韩精品久久久久久 | av免费观看高清 | 日韩欧美精品在线观看视频 | 国内精品久久久久久中文字幕 | 欧美午夜a | 91片黄在线观 | 日韩专区在线观看 | 97精品国产一二三产区 | 天天操狠狠操夜夜操 | 97精品国产97久久久久久免费 | 久久五月婷婷丁香 | 国产精品久久久久久久久免费看 | 日韩在线观看视频一区二区三区 | 91私密视频 | 国产精品一区专区欧美日韩 | 日韩激情在线视频 | 人人爽人人看 | 中文字幕在线观看视频网站 | 久久久亚洲网站 | 91av在线不卡 | 黄网av在线| 伊人黄色网 | 96精品高清视频在线观看软件特色 | av成人动漫 | 伊人国产视频 | 在线免费视 | 日韩在线欧美在线 | 久久尤物电影视频在线观看 | 日韩有色| 欧美日韩精品国产 | 久久毛片网站 | 在线播放日韩av | 中文字幕在线免费观看视频 | 日韩精品欧美专区 | av丝袜制服 | 四虎成人精品永久免费av九九 | 二区视频在线观看 | 久久久久免费精品 | 国产视频资源 | 久久精品国产免费看久久精品 | 日韩电影黄色 | 亚洲精品tv久久久久久久久久 | 在线观看精品国产 | 狠狠操欧美 | 精品久久久久久久久久久久久久久久 | 成人免费观看网站 | 国产一级性生活 | 中文字幕视频三区 | 香蕉视频免费在线播放 | 色吊丝在线永久观看最新版本 | av天天干 | 国产免费久久久久 | 天天操夜夜操夜夜操 | 色综合激情久久 | 久久久久久久久综合 | 黄网av在线| 久久国产热视频 | 国产精品毛片一区二区 | 国产精品免费久久久久久 | 六月婷婷网 | 中文字幕视频播放 | 最新日韩在线观看 | 久久99精品久久久久久秒播蜜臀 | 国产精品99久久免费黑人 | 久久久在线免费观看 | 国产精品自产拍在线观看网站 | av高清一区二区三区 | 一级性生活片 | 欧美日韩视频精品 | 高清视频一区 | 一区二区三区韩国免费中文网站 | 午夜成人免费电影 | 精品国产欧美一区二区三区不卡 | 久久这里精品视频 | 91在线观看欧美日韩 | 黄色小说在线观看视频 | 黄色片网站av | 亚洲精品国产免费 | 久久婷婷色 | 国产一级免费av | 婷婷国产在线观看 | 永久免费精品视频 | 国产91精品看黄网站 | 97视频在线免费 | 国产精品第7页 | 在线观看中文字幕亚洲 | 美女视频黄频大全免费 |