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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

esp32搭建文件服务器,ESP32入门示例 - SD卡Web服务器

發布時間:2023/12/2 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 esp32搭建文件服务器,ESP32入门示例 - SD卡Web服务器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這個是來自ESP32官方示例的改版,官方的示例由于存在一些問題所以我進行了修改

原本的示例有點邏輯上的問題,所以進行了一些修改

主要修改有:

1.新增SD卡測試部分 復制自官方SD卡示例

2.新增一個根目錄頁,訪問根目錄就可以看到

3.修改了目錄展示頁,可以通過"ip地址/list"看到,原本這個頁面只會返回"BAD ARGS"

4.新增Wifi設置頁,可以通過Wifi設置頁更改鏈接的Wifi(但是建議不要隨便更改,除非連著串口,不然你看不到新的IP地址)

5.新增文件上傳頁,可以通過網頁進行上傳(調用原本的"/edit"的鏈接)

下面是頁面展示:

主頁

Index.PNG (29.16 KB, 下載次數: 16)

2018-8-27 15:10 上傳

Wifi設置頁

WifiSetting.PNG (20.95 KB, 下載次數: 14)

2018-8-27 15:10 上傳

WIFI信息頁

WIFIINFO.PNG (7.28 KB, 下載次數: 19)

2018-8-27 15:10 上傳

文件目錄頁

File List.PNG (43.39 KB, 下載次數: 16)

2018-8-27 15:10 上傳

文件上傳頁

UPLOAD.PNG (3.88 KB, 下載次數: 17)

2018-8-27 15:10 上傳

主要代碼:

[mw_shl_code=cpp,true]/*

SDWebServer - Example WebServer with SD Card backend for esp8266

Copyright (c) 2015 Hristo Gochkov. All rights reserved.

This file is part of the WebServer library for Arduino environment.

This library is free software; you can redistribute it and/or

modify it under the terms of the GNU Lesser General Public

License as published by the Free Software Foundation; either

version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful,

but WITHOUT ANY WARRANTY; without even the implied warranty of

MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.??See the GNU

Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public

License along with this library; if not, write to the Free Software

Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA??02110-1301??USA

Have a FAT Formatted SD Card connected to the SPI port of the ESP8266

The web root is the SD Card root folder

File extensions with more than 3 charecters are not supported by the SD Library

File Names longer than 8 charecters will be truncated by the SD library, so keep filenames shorter

index.htm is the default index (works on subfolders as well)

upload the contents of SdRoot to the root of the SDcard and access the editor by going to http://esp8266sd.local/edit

Modified by Maoweicao 2018.8.27

*/

#include

#include

#include

#include

#include

#include

#include "FS.h"

#define DBG_OUTPUT_PORT Serial

const char* ssid = "................."; //Replace youself wifi ssid

const char* password = "......................"; //Replace youself wifi password

const char* host = "esp32sd";

String wifissid = "";

String wifipwd = "";

WebServer server(80);

static bool hasSD = false;

File uploadFile;

//format bytes

String formatBytes(size_t bytes) {

if (bytes < 1024) {

return String(bytes) + "B";

} else if (bytes < (1024 * 1024)) {

return String(bytes / 1024.0) + "KB";

} else if (bytes < (1024 * 1024 * 1024)) {

return String(bytes / 1024.0 / 1024.0) + "MB";

} else {

return String(bytes / 1024.0 / 1024.0 / 1024.0) + "GB";

}

}

void listDir(fs::FS &fs, const char * dirname, uint8_t levels){

Serial.printf("Listing directory: %s\n", dirname);

File root = fs.open(dirname);

if(!root){

Serial.println("Failed to open directory");

return;

}

if(!root.isDirectory()){

Serial.println("Not a directory");

return;

}

File file = root.openNextFile();

while(file){

if(file.isDirectory()){

Serial.print("??DIR : ");

Serial.println(file.name());

if(levels){

listDir(fs, file.name(), levels -1);

}

} else {

Serial.print("??FILE: ");

Serial.print(file.name());

Serial.print("??SIZE: ");

Serial.println(file.size());

}

file = root.openNextFile();

}

}

void createDir(fs::FS &fs, const char * path){

Serial.printf("Creating Dir: %s\n", path);

if(fs.mkdir(path)){

Serial.println("Dir created");

} else {

Serial.println("mkdir failed");

}

}

void removeDir(fs::FS &fs, const char * path){

Serial.printf("Removing Dir: %s\n", path);

if(fs.rmdir(path)){

Serial.println("Dir removed");

} else {

Serial.println("rmdir failed");

}

}

void readFile(fs::FS &fs, const char * path){

Serial.printf("Reading file: %s\n", path);

File file = fs.open(path);

if(!file){

Serial.println("Failed to open file for reading");

return;

}

Serial.print("Read from file: ");

while(file.available()){

Serial.write(file.read());

}

file.close();

}

void writeFile(fs::FS &fs, const char * path, const char * message){

Serial.printf("Writing file: %s\n", path);

File file = fs.open(path, FILE_WRITE);

if(!file){

Serial.println("Failed to open file for writing");

return;

}

if(file.print(message)){

Serial.println("File written");

} else {

Serial.println("Write failed");

}

file.close();

}

void appendFile(fs::FS &fs, const char * path, const char * message){

Serial.printf("Appending to file: %s\n", path);

File file = fs.open(path, FILE_APPEND);

if(!file){

Serial.println("Failed to open file for appending");

return;

}

if(file.print(message)){

Serial.println("Message appended");

} else {

Serial.println("Append failed");

}

file.close();

}

void renameFile(fs::FS &fs, const char * path1, const char * path2){

Serial.printf("Renaming file %s to %s\n", path1, path2);

if (fs.rename(path1, path2)) {

Serial.println("File renamed");

} else {

Serial.println("Rename failed");

}

}

void deleteFile(fs::FS &fs, const char * path){

Serial.printf("Deleting file: %s\n", path);

if(fs.remove(path)){

Serial.println("File deleted");

} else {

Serial.println("Delete failed");

}

}

void testFileIO(fs::FS &fs, const char * path){

File file = fs.open(path);

static uint8_t buf[512];

size_t len = 0;

uint32_t start = millis();

uint32_t end = start;

if(file){

len = file.size();

size_t flen = len;

start = millis();

while(len){

size_t toRead = len;

if(toRead > 512){

toRead = 512;

}

file.read(buf, toRead);

len -= toRead;

}

end = millis() - start;

Serial.printf("%u bytes read for %u ms\n", flen, end);

file.close();

} else {

Serial.println("Failed to open file for reading");

}

file = fs.open(path, FILE_WRITE);

if(!file){

Serial.println("Failed to open file for writing");

return;

}

size_t i;

start = millis();

for(i=0; i<2048; i++){

file.write(buf, 512);

}

end = millis() - start;

Serial.printf("%u bytes written for %u ms\n", 2048 * 512, end);

file.close();

}

void returnOK() {

server.send(200, "text/plain", "");

}

void returnOK(String msg) {

server.send(200, "text/plain", msg+"\r\n");

}

void returnFail(String msg) {

server.send(500, "text/plain", msg + "\r\n");

}

bool loadFromSdCard(String path) {

String dataType = "text/plain";

if (path.endsWith("/")) {

path += "index.htm";

}

if (path.endsWith(".src")) {

path = path.substring(0, path.lastIndexOf("."));

} else if (path.endsWith(".htm")) {

dataType = "text/html";

} else if (path.endsWith(".css")) {

dataType = "text/css";

} else if (path.endsWith(".js")) {

dataType = "application/javascript";

} else if (path.endsWith(".png")) {

dataType = "image/png";

} else if (path.endsWith(".gif")) {

dataType = "image/gif";

} else if (path.endsWith(".jpg")) {

dataType = "image/jpeg";

} else if (path.endsWith(".ico")) {

dataType = "image/x-icon";

} else if (path.endsWith(".xml")) {

dataType = "text/xml";

} else if (path.endsWith(".pdf")) {

dataType = "application/pdf";

} else if (path.endsWith(".zip")) {

dataType = "application/zip";

}

File dataFile = SD.open(path.c_str());

if (dataFile.isDirectory()) {

path += "/index.htm";

dataType = "text/html";

dataFile = SD.open(path.c_str());

}

if (!dataFile) {

return false;

}

if (server.hasArg("download")) {

dataType = "application/octet-stream";

}

if (server.streamFile(dataFile, dataType) != dataFile.size()) {

DBG_OUTPUT_PORT.println("Sent less data than expected!");

}

dataFile.close();

return true;

}

void handleWifiPage()

{

String content = "

Congratulations! You Now Connect to The Wifi!
";

content += "You Connect Wifi Name is:"+String(ssid)+"
";

content += "Wifi Password is:"+String(password)+"
";

content += "You input ssid is:" + wifissid + "
";

content += "You input password is:"+wifipwd+"
";

content += "";

server.send(200, "text/html", content);

}

void handleSetWifi()

{

String msg;

if (server.hasArg("DISCONNECT")){

Serial.println("Disconnection");

String header = "HTTP/1.1 301 OK\r\nSet-Cookie: ESPSESSIONID=0\r\nLocation: /wifiinfo\r\nCache-Control: no-cache\r\n\r\n";

server.sendContent(header);

return;

}

if (server.hasArg("WIFINAME") && server.hasArg("WIFIPWD")){

wifissid=server.arg("WIFINAME");

wifipwd=server.arg("WIFIPWD");

String header = "HTTP/1.1 301 OK\r\nSet-Cookie: ESPSESSIONID=1\r\nLocation: /wifiinfo\r\nCache-Control: no-cache\r\n\r\n";

server.sendContent(header);

Serial.println("WIFI INFO:");

Serial.println("Wifi Name:"+wifissid);

Serial.println("Wifi Password:"+wifipwd);

if(WiFi.isConnected())

{

WiFi.disconnect();

}

WiFi.begin(wifissid.c_str(),wifipwd.c_str());

int i=0;

while (WiFi.status() != WL_CONNECTED && i++ < 50) {//wait 25 seconds

Serial.print(".");

delay(500);

}

if (i == 51) {

DBG_OUTPUT_PORT.print("Could not connect to");

DBG_OUTPUT_PORT.println(wifissid);

while (1) {

delay(500);

}

}

DBG_OUTPUT_PORT.print("Connected! IP address: ");

DBG_OUTPUT_PORT.println(WiFi.localIP());

return;

}

String content = "

This is a Wifi Setting Page
";

content += "Wifi SSID:
";

content += "Wifi Password:
";

content += "

" + msg + "
";

content += "We Can Scan The Wifi List is:
";

int n = WiFi.scanNetworks();

if(n==0)

content += "There is no wifi can use!
";

else

{

content += "

  • ";
  • for(int i=0; i

    content += (String("

    ")+String(" Wifi SSID:")+String(WiFi.SSID(i))+String(" Wifi RSSI:")+String(WiFi.RSSI(i))+String((WiFi.encryptionType(i) == WIFI_AUTH_OPEN)?String(" "):String("*"))+String(""));

    }

    content += "

    ";

    }

    content += "";

    server.send(200, "text/html", content);

    }

    void handleRoot(){

    Serial.println("Enter handleRoot");

    String header;

    String content = "

    Hello, you successfully connected to ESP32-F!


    ";

    if (server.hasHeader("User-Agent")){

    content += "the user agent used is : " + server.header("User-Agent") + "
    ";

    }

    content += "You can choose this page to visit:
    ";

    content +="Wifi Setup
    ";

    content +="Wifi Infomation
    ";

    content +="File List
    ";

    content +="Upload File
    ";

    content +="Good Luck Everyone!";

    content += "";

    server.send(200, "text/html", content);

    }

    void handleUploadWeb()

    {

    File html=SD.open("/upload/upload.html");

    String dataType = "text/html";

    server.streamFile(html,dataType);

    Serial.println("Open Upload File");

    }

    void handleFileUpload() {

    bool updone=false;

    if (server.uri() != "/edit") {

    return;

    }

    String fileName = "";

    HTTPUpload& upload = server.upload();

    if (upload.status == UPLOAD_FILE_START) {

    if (SD.exists((char *)upload.filename.c_str())) {

    SD.remove((char *)upload.filename.c_str());

    }

    fileName = "/upload/"+upload.filename.substring(upload.filename.lastIndexOf('\\')+1);

    Serial.println(fileName);

    uploadFile = SD.open(fileName, FILE_WRITE);

    if(uploadFile!=NULL)

    Serial.println("File exsist!");

    DBG_OUTPUT_PORT.print("Upload: START, filename: "); DBG_OUTPUT_PORT.println(upload.filename);

    } else if (upload.status == UPLOAD_FILE_WRITE) {

    if (uploadFile) {

    if(uploadFile.write(upload.buf, upload.currentSize))

    Serial.println("write Done");

    }

    DBG_OUTPUT_PORT.print("Upload: WRITE, Bytes: "); DBG_OUTPUT_PORT.println(upload.currentSize);

    } else if (upload.status == UPLOAD_FILE_END) {

    uploadFile.close();

    DBG_OUTPUT_PORT.print("Upload: END, Size: "); DBG_OUTPUT_PORT.println(upload.totalSize);

    String message = "Upload Done!\n\n";

    message += "URI: ";

    message += server.uri();

    message += "\nMethod: ";

    message += (server.method() == HTTP_GET) ? "GET" : "POST";

    message += "\nArguments: ";

    message += server.args();

    message += "\n";

    for (uint8_t i = 0; i < server.args(); i++) {

    message += " NAME:" + server.argName(i) + "\n VALUE:" + server.arg(i) + "\n";

    }

    server.send(200, "text/plain", message);

    updone=true;

    }

    if(updone)

    if(fileName!="")

    readFile(SD,fileName.c_str());

    }

    void deleteRecursive(String path) {

    File file = SD.open((char *)path.c_str());

    if (!file.isDirectory()) {

    file.close();

    SD.remove((char *)path.c_str());

    return;

    }

    file.rewindDirectory();

    while (true) {

    File entry = file.openNextFile();

    if (!entry) {

    break;

    }

    String entryPath = path + "/" + entry.name();

    if (entry.isDirectory()) {

    entry.close();

    deleteRecursive(entryPath);

    } else {

    entry.close();

    SD.remove((char *)entryPath.c_str());

    }

    yield();

    }

    SD.rmdir((char *)path.c_str());

    file.close();

    }

    void handleDelete() {

    if (server.args() == 0) {

    return returnFail("BAD ARGS");

    }

    String path = server.arg(0);

    if (path == "/" || !SD.exists((char *)path.c_str())) {

    returnFail("BAD PATH");

    return;

    }

    deleteRecursive(path);

    returnOK();

    }

    void handleCreate() {

    if (server.args() == 0) {

    return returnFail("BAD ARGS");

    }

    String path = server.arg(0);

    if (path == "/" || SD.exists((char *)path.c_str())) {

    returnFail("BAD PATH");

    return;

    }

    if (path.indexOf('.') > 0) {

    File file = SD.open((char *)path.c_str(), FILE_WRITE);

    if (file) {

    file.write(0);

    file.close();

    }

    } else {

    SD.mkdir((char *)path.c_str());

    }

    returnOK();

    }

    String listDir2Web(fs::FS &fs, const char * dirname, uint8_t levels)

    {

    String message="";

    File root = fs.open(dirname);

    if(!root){

    message += "Failed to open directory
    ";

    return message;

    }

    if(!root.isDirectory()){

    message += "Not a directory
    ";

    return message;

    }

    File file = root.openNextFile();

    while(file){

    if(file.isDirectory()){

    message +="??DIR : ";

    message += String(file.name())+String("
    ");

    if(levels){

    message += listDir2Web(fs, file.name(), levels -1);

    }

    } else {

    message += String("??FILE: ");

    message += String(file.name())+String("
    ");

    message += String("??SIZE: ");

    message += formatBytes(file.size())+String("
    ");

    }

    file = root.openNextFile();

    }

    return message;

    }

    void printDirectory() {

    String header = "

    ";

    String message= header + "

    List the file in the SD Card:

    ";

    message += listDir2Web(SD,"/",5);

    server.send(200,"text/html",message);

    }

    void handleNotFound() {

    if (hasSD && loadFromSdCard(server.uri())) {

    return;

    }

    String message = "SDCARD Not Detected\n\n";

    message += "URI: ";

    message += server.uri();

    message += "\nMethod: ";

    message += (server.method() == HTTP_GET) ? "GET" : "POST";

    message += "\nArguments: ";

    message += server.args();

    message += "\n";

    for (uint8_t i = 0; i < server.args(); i++) {

    message += " NAME:" + server.argName(i) + "\n VALUE:" + server.arg(i) + "\n";

    }

    server.send(404, "text/plain", message);

    DBG_OUTPUT_PORT.print(message);

    }

    void setup(void) {

    DBG_OUTPUT_PORT.begin(115200);

    DBG_OUTPUT_PORT.setDebugOutput(true);

    DBG_OUTPUT_PORT.print("\n");

    WiFi.mode(WIFI_STA);

    //Soft AP Setting

    /*IPAddress softLocal(192,168,25,1);

    IPAddress softGateway(192,168,25,1);

    IPAddress softSubnet(255,255,255,0);

    WiFi.softAPConfig(softLocal,softGateway,softSubnet);

    WiFi.softAP("ESP32_5672C","adminadmin");

    Serial.println("SoftAP IPAdress:"+WiFi.softAPIP());*/

    //Station Setting

    WiFi.begin(ssid, password);

    DBG_OUTPUT_PORT.print("Connecting to ");

    DBG_OUTPUT_PORT.println(ssid);

    // Wait for connection

    uint8_t i = 0;

    while (WiFi.status() != WL_CONNECTED && i++ < 50) {//wait 25 seconds

    Serial.print(".");

    delay(500);

    }

    if (i == 51) {

    DBG_OUTPUT_PORT.print("Could not connect to");

    DBG_OUTPUT_PORT.println(ssid);

    while (1) {

    delay(500);

    }

    }

    DBG_OUTPUT_PORT.print("Connected! IP address: ");

    DBG_OUTPUT_PORT.println(WiFi.localIP());

    //Setting sub network

    if (MDNS.begin(host)) {

    MDNS.addService("http", "tcp", 80);

    DBG_OUTPUT_PORT.println("MDNS responder started");

    DBG_OUTPUT_PORT.print("You can now connect to http://");

    DBG_OUTPUT_PORT.print(host);

    DBG_OUTPUT_PORT.println(".local");

    }

    server.on("/",handleRoot);

    server.on("/list", HTTP_GET, printDirectory);

    server.on("/edit", HTTP_DELETE, handleDelete);

    server.on("/edit", HTTP_PUT, handleCreate);

    server.on("/upload",HTTP_GET,handleUploadWeb);

    server.on("/wifiinfo",HTTP_GET,handleWifiPage);

    server.on("/wifiset",HTTP_GET,handleSetWifi);

    server.on("/wifiset",HTTP_POST,handleSetWifi);

    server.on("/edit", HTTP_POST, []() {

    returnOK();

    }, handleFileUpload);

    server.onNotFound(handleNotFound);

    server.begin();

    DBG_OUTPUT_PORT.println("HTTP server started");

    /*if (SD.begin(SS)) {

    DBG_OUTPUT_PORT.println("SD Card initialized.");

    hasSD = true;

    }**/

    if(!SD.begin()){

    Serial.println("Card Mount Failed");

    return;

    }

    else

    {

    Serial.println("SD Card Ready!");

    hasSD=true;

    }

    uint8_t cardType = SD.cardType();

    if(cardType == CARD_NONE){

    Serial.println("No SD card attached");

    return;

    }

    Serial.print("SD Card Type: ");

    if(cardType == CARD_MMC){

    Serial.println("MMC");

    } else if(cardType == CARD_SD){

    Serial.println("SDSC");

    } else if(cardType == CARD_SDHC){

    Serial.println("SDHC");

    } else {

    Serial.println("UNKNOWN");

    }

    uint64_t cardSize = SD.cardSize() / (1024 * 1024);

    Serial.printf("SD Card Size: %lluMB\n", cardSize);

    listDir(SD, "/", 0);

    createDir(SD, "/mydir");

    createDir(SD, "/upload");

    listDir(SD, "/", 0);

    removeDir(SD, "/mydir");

    listDir(SD, "/", 2);

    writeFile(SD, "/hello.txt", "Hello ");

    appendFile(SD, "/hello.txt", "World!\n");

    readFile(SD, "/hello.txt");

    deleteFile(SD, "/foo.txt");

    renameFile(SD, "/hello.txt", "/foo.txt");

    readFile(SD, "/foo.txt");

    testFileIO(SD, "/test.txt");

    Serial.printf("Total space: %lluMB\n", SD.totalBytes() / (1024 * 1024));

    Serial.printf("Used space: %lluMB\n", SD.usedBytes() / (1024 * 1024));

    }

    void loop(void) {

    server.handleClient();

    }[/mw_shl_code]

    當然文件上傳頁是在SD卡目錄下面的,所以你需要在SD卡新建一個upload目錄并且上傳一個upload網頁

    這樣就可以上傳了。

    下面是那個比較簡單的上傳頁面

    記得要替換掉那個IP Address變成你自己的目錄或者直接去掉

    [mw_shl_code=html,true]

    Choose You Will Upload File:

    [/mw_shl_code]:

    另外一個版本:

    [mw_shl_code=html,true]

    Choose You Will Upload File:

    [/mw_shl_code]

    總結

    以上是生活随笔為你收集整理的esp32搭建文件服务器,ESP32入门示例 - SD卡Web服务器的全部內容,希望文章能夠幫你解決所遇到的問題。

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

    9热精品 | 欧美极品xxxxx | 二区在线播放 | 中文字幕在线色 | 久久99精品久久久久久秒播蜜臀 | 日韩精品免费一线在线观看 | 欧美日韩精品网站 | 久久久久久久久国产 | 久久久久影视 | 久久精品一二区 | 久久久久亚洲a | 狠狠操精品 | 久久视频在线观看免费 | 欧美成人区 | 美女视频网 | 亚洲精选99| 国产精品女人久久久 | 久久成人精品 | 欧美 亚洲 另类 激情 另类 | av一级片网站 | 精品久久久久久久久亚洲 | 亚洲天堂网在线观看视频 | www.日本色 | 久久99精品久久久久久 | 国产色a在线观看 | av在线免费观看不卡 | 在线观看一区 | 成人av影视 | 久久视频精品在线 | 久久免费在线观看视频 | 日韩视频在线观看视频 | 美女久久久久久久久久久 | 天天射天天干天天 | 在线观看中文字幕 | 在线有码中文字幕 | 亚洲小视频在线观看 | 人人看黄色 | 夜夜狠狠 | zzijzzij亚洲成熟少妇 | 国产一区在线看 | 深爱五月激情网 | 久艹在线免费观看 | 色综合天天做天天爱 | 国产午夜精品一区二区三区四区 | 综合网色| 国产精品电影一区 | 99视频精品| 日韩精品久久久免费观看夜色 | 一区二区三区在线观看免费 | 在线看一级片 | a级国产乱理论片在线观看 伊人宗合网 | 色天天 | 曰本免费av | 久久草在线免费 | 麻花天美星空视频 | 成人免费在线视频观看 | 欧美一区免费在线观看 | 欧美极品一区二区三区 | 国产高清视频在线免费观看 | 特黄特色特刺激视频免费播放 | 夜夜操网站 | 亚洲三区在线 | 91久色蝌蚪| 亚洲精品一区二区三区四区高清 | 激情五月综合 | av女优中文字幕在线观看 | 国产一级黄色av | 91av资源在线 | 日韩一级电影网站 | 五月婷婷另类国产 | 国产成人精品一区在线 | 国产一区二三区好的 | 久久视频这里有精品 | 欧美日韩高清 | 国精产品满18岁在线 | av一区二区三区在线观看 | 精品久久久久久久久亚洲 | 色综合天天天天做夜夜夜夜做 | 在线观看日韩免费视频 | 午夜丰满寂寞少妇精品 | 免费a一级 | av三级在线免费观看 | 欧美激情视频三区 | 亚洲欧洲精品一区二区精品久久久 | 91高清视频在线 | 亚洲成人av一区 | 久久久久久97三级 | 国产精品 国内视频 | 国产精品免费视频观看 | 天天色天天射天天综合网 | 伊人超碰在线 | 99久久激情| 五月天开心| 免费看色网站 | 在线电影日韩 | 国产精品久久久久久久久久久久久 | 亚洲九九影院 | 中文字幕在线视频一区 | 亚洲国产999| 在线免费观看视频一区二区三区 | 国产精品久久久久av福利动漫 | 国产亚洲精品久久久久久大师 | 日本韩国精品一区二区在线观看 | 国产福利一区二区在线 | 精品自拍网| 久久视频在线观看免费 | 亚洲国产网站 | 欧美激情va永久在线播放 | 2019久久精品| 99久久精品久久亚洲精品 | 午夜视频在线观看一区二区 | 久草视频中文在线 | 狠狠久久伊人 | 亚洲成年片 | av看片在线 | 久久伊人免费视频 | 日韩极品在线 | 亚洲成色777777在线观看影院 | 国产成人av网站 | 亚洲一区二区91 | 人人干在线观看 | 黄视频色网站 | 国产精品第十页 | 午夜久久视频 | 日韩欧美视频免费观看 | 在线观看电影av | 久久艹人人 | 在线观看日韩专区 | 福利视频网址 | 亚洲艳情 | 正在播放久久 | 91超级碰碰 | a级国产乱理伦片在线观看 亚洲3级 | 六月婷婷网 | 久久久资源网 | 伊人狠狠 | 九草在线视频 | 日p视频| 久久久91精品国产 | 精品一区 精品二区 | www..com黄色片 | 欧美日韩xxxxx | 成人h电影在线观看 | www.色婷婷.com | 人人爽人人射 | 日韩视频1 | 久久最新视频 | 毛片激情永久免费 | 国产一区二区三区视频在线 | 911亚洲精品第一 | 免费成人在线视频网站 | 99热官网| 久久综合狠狠综合久久综合88 | 在线观看视频99 | 国产精品成人国产乱 | 97视频免费看 | 色婷婷激情综合 | 国产手机视频在线播放 | 中文字幕乱在线伦视频中文字幕乱码在线 | 有没有在线观看av | 日韩中文免费视频 | 亚洲国产精品视频在线观看 | www.天天操 | 国产视频导航 | 亚洲成人资源在线 | 天天射天天搞 | 久久免费a | 亚州性色 | 亚洲精品国产成人av在线 | 国内精品久久久久影院男同志 | .精品久久久麻豆国产精品 亚洲va欧美 | 天天干天天操天天操 | 欧美精品久久久久性色 | 91av视频网| 亚洲精品国产精品国自 | 久久国产精品一区二区三区四区 | 中文字幕a∨在线乱码免费看 | 欧美老人xxxx18 | 97色婷婷成人综合在线观看 | 免费在线精品视频 | 激情视频区 | 久久久久久免费毛片精品 | 亚洲www天堂com | 黄色片亚洲 | 中文字幕传媒 | 成人免费大片黄在线播放 | 国产群p | 午夜精品一区二区三区在线 | 中文字幕在线观看网址 | 五月婷婷丁香在线观看 | 国产精品久久久久久久久搜平片 | 国产高清综合 | 免费av的网站| 91在线观 | 粉嫩av一区二区三区入口 | 精品一区二区免费视频 | 97福利在线 | 久久精品国产亚洲精品 | 麻豆成人在线观看 | 国产高清在线永久 | 亚洲九九九 | 中文字幕免费在线 | 五月天综合激情网 | 欧美在线视频日韩 | 久久免费视频6 | av在线一级 | 亚洲香蕉在线观看 | 亚洲精品国产精品国自产观看浪潮 | avwww在线 | 欧美精品资源 | 日韩中文字幕亚洲一区二区va在线 | 精品在线视频观看 | 又大又硬又黄又爽视频在线观看 | 久操久| 欧美日韩高清不卡 | 欧美疯狂性受xxxxx另类 | 久久av免费观看 | 99视频精品 | 黄色成人在线观看 | 精品一区二区免费 | 天堂av高清| 色综合天天综合网国产成人网 | 日本婷婷色 | 激情久久伊人 | 国产麻豆精品传媒av国产下载 | 黄色av电影免费观看 | 夜夜躁狠狠躁日日躁视频黑人 | 在线观看中文字幕2021 | 99精品福利 | 精品成人a区在线观看 | 亚洲国产高清在线 | 日p视频在线观看 | 久久看片网 | 97精品超碰一区二区三区 | 日本公妇在线观看高清 | 国产高清在线a视频大全 | 黄色在线成人 | 久久久穴 | 亚洲美女久久 | 国产黄色大片 | 日本久草电影 | 在线观看视频你懂 | 日韩电影久久 | 久久玖 | 欧美一级片在线观看视频 | 五月丁婷婷 | 啪啪凸凸 | 最近中文字幕完整视频高清1 | 精品亚洲欧美无人区乱码 | 天天爱天天草 | 国产精品99久久久久久宅男 | 女女av在线 | www.大网伊人 | 国产69精品久久app免费版 | 日韩高清精品免费观看 | 日韩在线观看精品 | 美女免费网视频 | 九色琪琪久久综合网天天 | 久久久91精品国产一区二区三区 | 午夜精品一二区 | 国产亚洲精品福利 | 精精国产xxxx视频在线播放 | 精品九九九 | 最近中文字幕完整高清 | 日韩啪视频| 97久久久免费福利网址 | 国产黄色大片免费看 | 丁香花五月 | 久久久精品免费观看 | 国产精品日韩欧美 | 免费高清无人区完整版 | 国产在线污 | 久久网站最新地址 | 日本午夜免费福利视频 | 久 久久影院| 久久视频在线观看 | 2019中文字幕第一页 | 99视频久| 成人啊 v | 亚洲aⅴ乱码精品成人区 | 狠狠操操| 免费99精品国产自在在线 | 在线免费视 | av电影一区 | 久久免费成人网 | 在线免费观看黄 | 欧美精彩视频在线观看 | 午夜av在线播放 | 天天摸天天操天天爽 | 日韩在线视频播放 | 懂色av一区二区三区蜜臀 | 日韩中文字幕免费在线观看 | 成人黄色影片在线 | 国产专区视频在线 | 国产亚洲精品久久久久秋 | 国产精品久久99综合免费观看尤物 | 免费av福利 | 五月天色中色 | 夜夜躁天天躁很躁波 | 香蕉视频亚洲 | 国产色视频123区 | 欧美精品久久久久久久亚洲调教 | 欧美经典久久 | 欧美激情综合五月色丁香 | 久操视频在线免费看 | 碰超在线| 久久久久免费精品国产小说色大师 | 狠狠色丁香婷婷综合欧美 | 激情深爱.com | 久久久久久久久黄色 | 日日摸日日添夜夜爽97 | 久久久久欠精品国产毛片国产毛生 | 天天操天天操天天操天天操 | 99国产成+人+综合+亚洲 欧美 | 日本特黄特色aaa大片免费 | 91在线欧美 | 91在线精品视频 | 国产3p视频| av一级在线 | 99视频这里有精品 | 视频二区在线 | 97超碰在线免费 | 在线观看完整版免费 | 久久黄色精品视频 | 天天综合导航 | 天堂视频中文在线 | av片子在线观看 | 国产精品久久久久久久久久久免费看 | 色资源网在线观看 | 国产精品视频一二三 | 日韩网站在线免费观看 | 久久久久久久久久久久国产精品 | av日韩精品 | 久久99久久99精品中文字幕 | av免费看网站 | 成人97人人超碰人人99 | 91av官网| 激情av网 | 国产九九在线 | 91精品国产高清 | 国产a精品 | www.色com| 在线国产99| 国产精品18久久久久vr手机版特色 | 久久人人爽爽 | 久久精品网站免费观看 | 欧美老少交 | 欧洲亚洲女同hd | 久久久免费毛片 | 国产精品入口a级 | 在线视频黄 | 欧美在线观看视频免费 | 在线观看免费版高清版 | 久久婷婷五月综合色丁香 | 91在线免费观看国产 | 国产精品国产三级国产aⅴ9色 | 在线观看一区视频 | 在线观看日韩专区 | 成年人电影免费在线观看 | 国产精品久久久久久久久久久久午夜 | 国产精品乱码久久久 | 久热免费在线观看 | 久久视频这里有精品 | 香蕉视频久久 | 日本三级吹潮在线 | 久久免费av电影 | 欧美激情视频免费看 | 狠狠操狠狠插 | 黄a网站| 国产精品久久久久毛片大屁完整版 | 最近免费中文字幕大全高清10 | 国产精品99久久久久久人免费 | 欧美日本国产在线观看 | 亚洲国产高清在线观看视频 | 欧美久久久影院 | 国产91av视频在线观看 | 亚洲毛片久久 | 欧美一级艳片视频免费观看 | 激情综合网在线观看 | 亚洲精品在线免费播放 | 国产精品国内免费一区二区三区 | 色a在线观看 | 精品91久久久久 | 亚洲三区在线 | 久久天天躁狠狠躁夜夜不卡公司 | 香蕉免费在线 | 午夜12点 | 色诱亚洲精品久久久久久 | 9免费视频 | 亚洲精欧美一区二区精品 | 久久成人免费视频 | 成年人免费看的视频 | 国产精品99精品 | 国产色综合 | 欧美日韩国产精品久久 | 在线91视频 | 婷婷亚洲最大 | 91香蕉国产| 97国产在线| 日韩系列在线 | 国产又粗又猛又黄又爽视频 | 婷婷激情五月 | 婷婷激情网站 | 日日夜夜综合 | 婷婷伊人综合亚洲综合网 | 99国产精品久久久久老师 | 黄色软件网站在线观看 | 亚洲免费视频在线观看 | 婷婷深爱五月 | 国产精品久久艹 | 伊人狠狠干 | 亚洲精品一区二区三区高潮 | 久久都是精品 | www·22com天天操| 国产精品久久二区 | 国产精品精品久久久久久 | 超碰人人做 | 色伊人网| 亚av在线 | 亚洲精品玖玖玖av在线看 | 一本一本久久aa综合精品 | 美女激情影院 | 免费能看的黄色片 | 成人免费在线看片 | 4438全国亚洲精品观看视频 | 日韩在线精品 | 亚洲精品久久久久中文字幕二区 | 国产精品video爽爽爽爽 | 亚洲精品中文在线 | 欧美精品xx| 亚州人成在线播放 | 日韩欧美一区二区在线播放 | 九九综合久久 | 亚洲九九精品 | 女人魂免费观看 | 日韩一区二区免费在线观看 | 精品夜夜嗨av一区二区三区 | 中文字幕av全部资源www中文字幕在线观看 | 日韩av一区二区在线影视 | 久久国产精品电影 | 日韩欧美在线视频一区二区 | 国产资源av | 精品一区二区三区久久久 | 99热精品在线 | 中文字幕亚洲综合久久五月天色无吗'' | 日韩欧美在线国产 | av天天澡天天爽天天av | 日韩综合视频在线观看 | 麻豆久久久久 | 一区二区伦理 | 国产精品高清在线 | 成人av中文字幕在线观看 | 免费看的黄色片 | 精品国产一区二区三区久久 | 怡春院av | 久久香蕉国产精品麻豆粉嫩av | 久草干 | 色就色,综合激情 | 国产视频资源在线观看 | 六月丁香六月婷婷 | 91在线播放视频 | 色大片免费看 | 亚洲成人黄色在线 | 九九热在线播放 | 久久国产影院 | 日精品在线观看 | 五月天电影免费在线观看一区 | 亚洲国产精品久久久久婷婷884 | 中文字幕字幕中文 | 黄色av一区二区 | 色噜噜狠狠色综合中国 | 亚洲理论在线 | 日韩免费电影在线观看 | 国产一级免费电影 | 色婷婷电影 | 91精品国产一区二区在线观看 | 中文字幕在线看视频国产中文版 | 国产精品一区二区精品视频免费看 | 亚洲欧美日韩在线看 | 亚洲视频专区在线 | 国内揄拍国产精品 | 五月婷婷久久综合 | 天天干天天干天天射 | 国产精品99久久久精品 | wwwwww黄| 曰本免费av | 在线观看不卡的av | 色吊丝av中文字幕 | 久久国产一区二区三区 | 国产美女视频网站 | 日韩欧美大片免费观看 | 久久久99精品免费观看乱色 | 91丨九色丨勾搭 | 久久人视频 | 欧美性天天 | av怡红院 | 亚洲日本激情 | 国产精品色婷婷 | 97视频人人澡人人爽 | 8x成人免费视频 | 少妇bbw搡bbbb搡bbb | 亚洲精品女人 | av韩国在线 | 国产群p| 国产精品免费看久久久8精臀av | 六月婷婷久香在线视频 | 丁香婷婷色综合亚洲电影 | 成人黄色小说在线观看 | 麻花豆传媒mv在线观看 | 午夜影院在线观看18 | 国产免费观看av | 久久久av电影 | 92国产精品久久久久首页 | 国产精品久久久久一区二区国产 | 天天操夜夜操夜夜操 | 国产va饥渴难耐女保洁员在线观看 | 亚洲精品国产品国语在线 | 免费一级日韩欧美性大片 | 在线观看黄网 | 99热这里只有精品免费 | 操操日日 | 久久激五月天综合精品 | 免费av在线播放 | 国产福利免费在线观看 | 精品国产精品久久一区免费式 | 草久在线视频 | 欧美精品久久久久久久免费 | 免费在线激情电影 | 国产亚洲欧美在线视频 | 久草综合视频 | 国产精品成人一区二区三区 | 久久久久久久av麻豆果冻 | 香蕉久久国产 | 国产精品成人一区二区三区 | 综合激情av | 99se视频在线观看 | 亚洲国产成人在线播放 | 怡红院久久 | 97av视频 | 欧美在线视频a | 欧美精品久久久久a | 99久久精品无码一区二区毛片 | 天天拍天天干 | 欧美日韩国产mv | 色综合天天狠天天透天天伊人 | 91av视频在线观看免费 | 91久久精品一区二区二区 | 日本久久久久久科技有限公司 | 成人国产网站 | 麻豆视频在线免费 | 区一区二在线 | 成人av电影在线 | 免费黄色av电影 | 韩国精品在线 | 国产精品网址在线观看 | 91av欧美| 国产精品综合久久久 | 五月天亚洲综合小说网 | 国产三级视频在线 | 91大片成人网 | 国产麻豆精品一区二区 | 91视频下载| 久久精品国产美女 | 国产精品av免费在线观看 | 三级免费黄色 | 91久久在线观看 | av不卡在线看 | 综合婷婷丁香 | 激情五月婷婷激情 | 天堂av在线 | 午夜av在线电影 | www.夜夜爱 | 九九视频网 | 色五婷婷 | 亚洲精品国产精品国自产在线 | 深夜免费小视频 | av免费在线播放 | 国产剧情久久 | 天海冀一区二区三区 | 久久久精品免费观看 | 欧美综合色在线图区 | 久久一区国产 | 亚洲精品乱码久久久久久9色 | 日日婷婷夜日日天干 | 草久久久久 | 又黄又爽又湿又无遮挡的在线视频 | 久久免费a| av免费福利 | 日韩中文字幕免费电影 | 日韩欧美视频在线免费观看 | 久久精品国产一区 | 人人射人人射 | 成人资源在线观看 | 岛国av在线免费 | 六月丁香色婷婷 | 中文字幕一区二区三区乱码不卡 | av在线电影播放 | 91最新地址永久入口 | 午夜视频免费播放 | 干狠狠| 亚洲欧美日韩国产精品一区午夜 | 在线观看va | 成人黄色国产 | 西西www4444大胆在线 | 8x8x在线观看视频 | 干综合网| 99精品偷拍视频一区二区三区 | 欧美一区二区在线刺激视频 | 国产专区精品 | www亚洲视频 | 99精品黄色| 中文字幕视频一区 | 久久精品国产免费看久久精品 | 中文字幕视频观看 | 国产香蕉97碰碰久久人人 | 国产精品3区 | 日韩有码在线观看视频 | 久久精品站 | 91精品久| 久久久www免费电影网 | 久久99精品国产一区二区三区 | 久久精品国产成人精品 | 国产精品理论在线观看 | av成人在线播放 | 成人午夜网址 | 免费欧美高清视频 | 二区中文字幕 | 色婷婷骚婷婷 | 91高清免费观看 | 国产精品久久久久久久久大全 | 月丁香婷婷 | 欧美精品一区二区免费 | 免费99精品国产自在在线 | 狠狠狠狠狠狠狠干 | www免费视频com | 国产自制av| 日韩三区在线 | 亚洲精品日韩av | 99综合电影在线视频 | 日本动漫做毛片一区二区 | 国产香蕉视频在线观看 | 久久久久网址 | 中文字幕成人网 | 欧美日韩亚洲第一 | 久久久久久视频 | 久久久久久久av | 国产精品va在线播放 | 人人干狠狠操 | 97在线观看视频免费 | 成人在线免费观看网站 | 97在线免费视频 | 啪啪肉肉污av国网站 | 丰满少妇在线观看 | 偷拍精偷拍精品欧洲亚洲网站 | 毛片一级免费一级 | 超碰人人草 | 日韩成人免费观看 | 超碰日韩 | 国产不卡精品 | 日本视频不卡 | 天天干夜夜夜 | 日韩字幕 | 日日干美女 | 色婷婷午夜| 毛片www | 午夜精品一区二区三区四区 | 日韩理论电影网 | 成人久久久电影 | 黄色aaa级片 | 亚洲日日夜夜 | 色综合网 | 操少妇视频 | 2018好看的中文在线观看 | 欧美一级视频免费看 | 日韩av进入 | 国产精品久久久久久久久毛片 | 99久久这里有精品 | 亚洲国产福利视频 | 91精品色 | 成人av直播 | 中文字幕资源在线观看 | 国产原创av在线 | 亚洲婷婷丁香 | 日本女人b | 日本一区二区高清不卡 | 超碰在线人人艹 | av在线官网 | 五月天六月丁香 | a'aaa级片在线观看 | 色一级片| 日韩国产精品毛片 | 在线观看国产区 | 亚洲国产精品久久 | 色噜噜在线观看 | 色噜噜日韩精品一区二区三区视频 | 久久专区 | 久久99国产精品自在自在app | 天天伊人网| av一区二区在线观看中文字幕 | 国产精品美女久久久久久2018 | 亚洲视频免费在线 | 久久久久福利视频 | 亚洲欧美怡红院 | 91精品国自产在线观看 | 久草精品视频在线观看 | 最近中文字幕完整高清 | av网在线观看 | 免费成视频 | 久久观看最新视频 | 亚洲精品乱码久久久久久按摩 | 国产精品高潮呻吟久久av无 | 日韩欧美国产精品 | 久久久免费毛片 | 91成人精品在线 | 在线看片成人 | 精品欧美日韩 | 国产精品九九视频 | 国产精品久久久久av免费 | 国产一区私人高清影院 | 久久不见久久见免费影院 | 国产网红在线观看 | 在线婷婷| 久久成年人视频 | 一级黄色片在线免费看 | 黄a网站| 欧美日韩在线电影 | 久久综合狠狠综合久久狠狠色综合 | 国产在线观看,日本 | 国产精品免费视频网站 | 婷婷综合伊人 | 国产精品久久久久久久久久妇女 | 欧美性色综合网 | 九九热免费观看 | 久久久久久久免费观看 | 久久一线| 特级aaa毛片 | 91精品天码美女少妇 | 黄色免费视频在线观看 | 亚洲综合在线视频 | 国产在线更新 | av蜜桃在线 | 麻豆91在线看| 国产免费亚洲 | 久久国产视频网站 | 免费视频你懂的 | 成人中文字幕在线观看 | 99综合电影在线视频 | 午夜视频色 | 久久情侣偷拍 | 天天综合天天做天天综合 | 五月婷婷免费 | 午夜12点 | 最近免费在线观看 | 久久国产精品一二三区 | 三级视频片 | 91传媒91久久久 | 黄色看片| 五月天中文字幕mv在线 | 成人黄色小说在线观看 | 五月婷婷综合色拍 | 国产成人精品999在线观看 | 五月婷在线 | av免费电影在线观看 | 婷婷久操 | 激情五月***国产精品 | 99国产精品视频免费观看一公开 | 中文乱幕日产无线码1区 | 免费视频色 | 麻豆视频国产在线观看 | 1024手机看片国产 | 久久国产日韩 | www.色国产 | 精品一区二区久久久久久久网站 | 色偷偷av男人天堂 | 成人一级片免费看 | 日日爱网址| 亚洲精品97 | 欧美在线视频一区二区三区 | 精品专区一区二区 | 五月婷婷婷婷婷 | 丁香视频免费观看 | 欧美成人理伦片 | 国产999| 亚洲成人黄色网址 | 久久亚洲私人国产精品 | 日韩久久久久久 | www国产一区 | 99 视频 高清| 观看免费av| 久久伊99综合婷婷久久伊 | 精品国产91亚洲一区二区三区www | 久久精品网站视频 | 五月天亚洲婷婷 | 日韩激情第一页 | www.啪啪.com | 亚洲欧美国产精品va在线观看 | 黄色网址国产 | 国产91精品在线观看 | 亚洲手机av | 久久视影| 91在线视频一区 | 亚洲精品 在线视频 | 999亚洲国产996395 | 久久久久成 | 亚洲国产成人精品久久 | 一区三区视频 | 国产一区二三区好的 | 中文字幕视频 | 日日干干夜夜 | 麻豆一精品传二传媒短视频 | 久久国产电影院 | 国产小视频在线免费观看 | 免费成人在线观看视频 | 91丨九色丨国产在线观看 | 狠狠色丁香婷婷综合橹88 | 精品国产一区二区三区噜噜噜 | 亚洲久草在线视频 | 久久伊人国产精品 | 国产精品久久久精品 | 久久久久女人精品毛片九一 | 国产精品久久影院 | 999视频在线播放 | 国产91精品一区二区麻豆亚洲 | 国产视频一二区 | a级一a一级在线观看 | 国产精品久久久久久婷婷天堂 | 久久精品xxx | 99免在线观看免费视频高清 | 国产精品资源在线观看 | 中文字幕高清在线 | 久久视频国产精品免费视频在线 | 香蕉久久国产 | 午夜精品一区二区三区在线观看 | 视频一区亚洲 | 999成人免费视频 | 久久久99国产精品免费 | 精品国精品自拍自在线 | 97免费在线视频 | 国产高清不卡 | 国产一区在线精品 | 久久久999免费视频 日韩网站在线 | 色99久久| 射射射综合网 | 99国产成+人+综合+亚洲 欧美 | 国产黄网站在线观看 | 91免费高清在线观看 | 免费a视频在线 | 久久综合加勒比 | 久草在| 欧美另类调教 | 精品久久网 | 日韩在线电影一区二区 | 亚洲综合色激情五月 | av在线网站大全 | 欧美亚洲三级 | av在线官网 | 伊人网综合在线观看 | 免费91在线观看 | 欧美精品久| 婷婷丁香五 | 免费麻豆网站 | 久久6精品 | 在线免费观看视频一区二区三区 | 69国产精品视频 | 国产精品久久久久久久久免费 | 天天天天天天天操 | 亚洲高清在线视频 | 精品国产一区二 | 国产日韩视频在线播放 | 天天操天 | 人人草人人做 | 久草视频中文 | 国产免费专区 | av网站大全免费 | 亚洲精品中文字幕视频 | 一级淫片在线观看 | 精品天堂av | 91精品久久久久久久99蜜桃 | 亚洲激情一区二区三区 | 欧洲在线免费视频 | 91桃色在线免费观看 | www.com黄色 | 91chinesexxx | 麻豆免费在线视频 | 福利片免费看 | 91亚洲精品久久久蜜桃网站 | 成年人视频在线免费播放 | 亚洲视频,欧洲视频 | 99久热在线精品视频成人一区 | 日韩精品在线观看视频 | 欧美夫妻生活视频 | 国产成人综合精品 | 日韩精品中文字幕一区二区 | 日韩免费大片 | 97免费在线观看视频 | 日韩毛片在线免费观看 | 天天干天天干天天色 | 亚洲国产精品久久久久婷婷884 | 日韩一区二区免费在线观看 | 国产黄色免费 | 欧美性生活久久 | 亚洲精品视频在线观看免费 | 91成人精品一区在线播放 | 又粗又长又大又爽又黄少妇毛片 | 日韩a欧美| 中文字幕av在线不卡 | 国产在线精品一区二区 | 日韩欧美国产成人 | 日韩经典一区二区三区 | 97国产 | 成人小视频在线观看免费 | 久久久视频在线 | 人人精久 | 色婷婷久久久 | 国产麻豆精品免费视频 | 97碰碰视频 | 欧美一二三区播放 | 字幕网资源站中文字幕 | 亚洲人人网 | 亚洲电影院 | 国产精品视频免费在线观看 | 精品国产成人av | 久久高清 | 蜜桃视频日本 | 99久久999久久久精玫瑰 | 最近中文字幕mv免费高清在线 | 在线观看中文字幕2021 | 日韩视频免费观看高清 | 国产一二三四在线观看视频 | 亚洲综合激情小说 | 日韩高清dvd | 又色又爽又黄 | 97视频免费在线 | 成年人在线观看视频免费 | 欧美亚洲免费在线一区 | 麻豆传媒视频在线 | 国产小视频免费在线网址 | 亚洲欧美在线综合 | 午夜久久网 | 久久久久久久久久福利 | 免费电影一区二区三区 | av一级在线 | 99这里只有精品99 | 国产福利电影网址 | 91成人免费电影 | av黄色大片 | 亚洲va在线va天堂 | 国产成人精品久久亚洲高清不卡 | 欧美日韩在线免费观看 | 日日天天干 | 久久免费视频一区 | 精品日韩av | 成人毛片在线观看视频 | 二区三区在线视频 | 欧美日韩国产精品久久 | 深爱激情五月综合 | 精品日韩在线 | 日本精品视频在线播放 | 久草视频在线资源站 | 国产日韩在线一区 | 国产精品久久久久免费观看 | 免费午夜视频在线观看 | 九七在线视频 | 亚洲精品国偷拍自产在线观看蜜桃 | 999成人 | 久久午夜精品 | 国外调教视频网站 | 欧美日韩亚洲精品在线 | 超碰97.com | 人人爽影院 | 日日躁夜夜躁aaaaxxxx | 久久99久久99精品中文字幕 | 婷婷久久网站 | 最新的av网站 | 中文字幕精品一区 | 精品久久久成人 | 欧美国产大片 | 久久久久久久久久福利 | 一级黄色网址 | 精品国产激情 | 国产福利在线不卡 | 亚洲欧洲精品一区二区精品久久久 | 日韩在线观看你懂的 | 色综合久久久久网 | 特级西西444www高清大视频 | 久久久久久久久久久久亚洲 | 亚洲a色| av成人在线网站 | 最新动作电影 | 久久久久久影视 | 九九九九九九精品 | 综合在线色 | 中文字幕资源网 国产 | 国产第一页在线观看 | 久99久在线 | 中文字幕在线观看完整版 | 久久 地址 | a资源在线 |