精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

SpringBoot + MinIO 輕松構建對象存儲服務,支持私有化部署!

存儲 數據管理
為了節省成本,很多項目團隊會自己搭建一套云存儲服務,比如采用開源的 fastDFS 工具來作為文件存儲服務器,雖然能性能不錯,但是軟件安裝環境非常復雜,最重要的是沒有一個完整的技術文檔,大部分都是某某公司或者某某網友自己總結的文檔,每次維護起來很是麻煩。

01、背景介紹

在實際的軟件系統開發過程中,經常避免不了需要用到文件存儲服務。

例如,對于小型的網站系統,通常會將文件存儲服務和網站系統部署在一臺服務器中,以實現低成本的資源投入,如果訪問量不大,基本上沒什么問題。當訪問量逐漸升高,此時網站的文件資源讀取越來越頻繁,單臺服務器可能難以承載較大的請求量,這個時候網站可能會出現打不開,甚至系統異常等問題。

當出現這個場景,很容易第一時間想到將文件采用云存儲服務來解決。所謂云存儲服務,簡單的說,就是將訪問很頻繁的文件資源服務,由本地改成云廠商提供的文件存儲服務,比如阿里云 OSS、七牛云、騰訊云、百度云等等,遷移之后,網站的訪問壓力會得到極大的釋放,服務也會變得更加穩定。但是,這些云存儲服務大部分都是收費的,以阿里云為例,數據存儲通常按照 0.12 元/GB/月的標準來收費,雖然便宜,但是日積月累下來也是一筆不小的開支啊。

為了節省成本,很多項目團隊會自己搭建一套云存儲服務,比如采用開源的 fastDFS 工具來作為文件存儲服務器,雖然能性能不錯,但是軟件安裝環境非常復雜,最重要的是沒有一個完整的技術文檔,大部分都是某某公司或者某某網友自己總結的文檔,每次維護起來很是麻煩。

直到出現了 MinIO,云存儲服務工具又多了一個新的可選項。

MinIO 是一款號稱世界上速度最快的對象存儲服務器,專為大規模數據存儲和分析而設計。它支持在各種環境中部署,包括物理服務器、虛擬機、容器等,最關鍵的是它的技術文檔非常完善,非常容易上手;同時,對個人用戶是完全開源免費的。

今天通過這篇文章,我們一起了解一下如何利用 MinIO 來搭建一套屬于自己的云存儲服務。

02、方案實踐

2.1、minio 快速安裝

minio 工具的安裝非常簡單,如果你本機安裝了 Docker 容器,可以通過 Docker 命令一鍵實現安裝操作。

以 windows 操作系統為例,安裝命令如下。

docker run \
   -p 9000:9000 \
   -p 9001:9001 \
   --name minio1 \
   -v D:\minio\data:/data \
   -e "MINIO_ROOT_USER=ROOTUSER" \
   -e "MINIO_ROOT_PASSWORD=CHANGEME123" \
   quay.io/minio/minio server /data --console-address ":9001"

相關參數解讀:

  • docker run:表示啟動運行容器
  • -p:表示為容器綁定一個本地的端口
  • -name:表示為容器創建一個本地的名字
  • -v:表示將文件路徑設置為容器使用的持久卷位置。當 MinIO 將數據寫入 /data時,該數據會鏡像到本地路徑~/minio/data, 使其能夠在容器重新啟動時保持持久化。您可以設置任何具有讀取、寫入和刪除權限的文件路徑來使用。
  • -e:表示設置登陸控制臺的用戶名和密碼。其中控制臺的訪問地址為http://本機ip:9001,api 的訪問地址為http://本機ip:9000。

如果沒有 docker 容器,可以采用軟件包方式進行安裝,具體實現方式可以參考官網文檔,地址如下。

https://minio.org.cn/docs/minio/container/index.html

服務啟動成功之后,在瀏覽器中訪問http://127.0.0.1:9001地址,會看到類似于如下界面。

圖片圖片

輸入上文設置的用戶名和密碼,即可登陸!

2.2、minio 使用介紹

登陸成功之后,會看到類似于如下的主界面。

圖片圖片

由于官方并沒有提供漢化版,如果想要實現中文展示,可以使用瀏覽器插件進行翻譯,翻譯之后的內容如下。

圖片圖片

在對象存儲服務里面,所有的文件都是以桶的形式來組織的。簡單的說,你可以將桶看作是目錄,這個目錄下有很多的文件或者文件夾,這和其它云存儲服務基本一致。

下面我們一起來快速體驗一下!

2.2.1、創建存儲桶

所有的文件必須要存儲到桶中,因此我們需要先創建一個存儲桶。

圖片圖片

如果想要修改存儲桶信息,點擊左側的Buckets菜單,就可以看到相關的存儲桶配置信息。

2.2.2、上傳和下載文件

存儲桶創建完成之后,就可以上傳文件了。

點擊Object Browser菜單,可以看到剛剛創建的存儲桶public-bucket,點擊進入,上傳我們想要存儲的文件了。

圖片圖片

圖片圖片

圖片圖片

如果想要下載文件或者預覽文件,點擊文件,右側會彈出相關的操作按鈕,點擊相應的操作按鈕就可以了。

2.2.3、設置文件公開訪問

默認創建的存儲桶,都是私有桶,也就是說無法被公開訪問。

圖片圖片

以上文的文件為例,如果以 api 的方式直接訪問,會提示無權限,示例如下:

圖片圖片

通常來說,我們會將數據寫入操作進行控制;對于讀操作,很多不涉及安全問題的,我們希望能被互聯網公開訪問,以便加快文件的訪問速度,此時如何實現呢?

可以在存儲桶里面配置,將數據讀取權限設置為公開訪問,操作示例如下:

圖片圖片

此時,我們再次以 api 的方式訪問,結果如下:

圖片圖片

可以清晰的看到,此時文件可以公開訪問了。

2.3、springBoot 集成 minio 實現文件存儲

最后,我們一起來看看,如何在 Spring Boot 工程中集成 minio 客戶端以便實現文件存儲服務。

2.3.1、創建用戶訪問密鑰

MinIO 支持通過用戶、密碼來管理存儲桶,我們可以利用 minio 客戶端來實現文件的上傳和下載。

點擊Access Keys菜單,創建用戶名和密碼并將其保存,下文會用到。

圖片圖片

2.3.2、引入依賴包

在 Spring Boot 工程,引入  minio 客戶端依賴包。

<dependency>
    <groupId>io.minio</groupId>
    <artifactId>minio</artifactId>
    <version>7.1.4</version>
</dependency>
2.3.3、添加相關配置

在application.properties文件中,添加 minio 相關的配置信息.

minio.endpoint=http://127.0.0.1:9000
minio.access-key=o1TJJL9noE69KIgZtKQ0
minio.secret-key=KAi91ZUYHXCzCn1XUiHJ3qQflp50XFqlTCFt6Ik3
minio.bucket-name=public-bucket
2.3.4、編寫 Minio 客戶端配置類

基于上文的配置信息,編寫 Minio 客戶端配置類。

@Configuration
public class MinioConfig {

    @Value("${minio.endpoint}")
    private String minioEndpoint;

    @Value("${minio.access-key}")
    private String minioAccessKey;

    @Value("${minio.secret-key}")
    private String minioSecretKey;

    @Bean
    public MinioClient minioClient() {
        return MinioClient.builder()
                .endpoint(minioEndpoint)
                .credentials(minioAccessKey, minioSecretKey)
                .build();
    }
}
2.3.5、編寫上傳和文件預覽服務

接著利用 minioClient 客戶端,編寫上傳和文件預覽服務。

@RestController
public class FileController {

    @Value("${minio.bucket-name}")
    private String bucketName;

    @Autowired
    private MinioClient minioClient;

    /**
     * 文件上傳
     * @param file
     * @return
     * @throws IOException
     */
    @PostMapping("/upload")
    public String upload(@RequestParam("file") MultipartFile file) {
        try {
            ObjectWriteResponse response = minioClient.putObject(
                    PutObjectArgs
                            .builder()
                            .bucket(bucketName)
                            .object(file.getOriginalFilename())
                            .stream(file.getInputStream(), file.getInputStream().available(), -1)
                            .contentType(file.getContentType())
                            .build()
            );
            return "upload file success,tagId:" + response.etag();
        } catch (Exception e) {
            e.printStackTrace();
            return "upload file error";
        }
    }


    /**
     * 構建預覽地址
     * @param fileName
     * @return
     * @throws Exception
     */
    @GetMapping("/getPreviewUrl")
    public String getPreviewUrl(@RequestParam("fileName") String fileName) throws Exception {
        // 構建預覽地址,默認15秒過期,無論是私有桶還是公有桶,文件通過鏈接都可以訪問
        String url = minioClient.getPresignedObjectUrl(GetPresignedObjectUrlArgs.builder()
                .method(Method.GET)
                .bucket(bucketName) //存儲桶
                .object(fileName) //文件名
                .expiry(15) // 設置過期時間,單位秒
                .build());
        return url;
    }


    /**
     * 構建永久訪問地址
     * @param fileName
     * @return
     * @throws Exception
     */
    @GetMapping("/getPublicUrl")
    public String getDownloadUrl(@RequestParam("fileName") String fileName) throws Exception {
        // 構建永久訪問地址,前提是這個存儲桶允許公開訪問
        String url = minioClient.getObjectUrl(bucketName, fileName);
        return url;
    }

}
2.3.6、編寫上傳頁面

在resources/static目錄下,創建index.html文件,編寫上傳頁面。

<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>文件上傳</title>
</head>
<body>
<h1>文件上傳</h1>
<form action="/upload" method="post" enctype="multipart/form-data">
    <input type="file" name="file" required>
    <button type="submit">上傳</button>
</form>
</body>
</html>
2.3.7、最后驗證一下服務

最后,將服務啟動,一起來驗證一下代碼的正確性。

1)上傳服務驗證

在瀏覽器端,訪問http://127.0.0.1:8080/,選擇文件并上傳,示例如下。

圖片圖片

回到 minio 控制臺,可以看到剛剛上傳的文件信息。

圖片圖片

2)文件預覽地址驗證

在瀏覽器端,訪問http://127.0.0.1:8080/getPreviewUrl?fileName=圖片.jpeg,會返回一段帶有簽名的文件預覽地址,示例如下。

圖片圖片

將其地址復制出來直接訪問,可以清晰的看到圖片能正常展示。

圖片圖片

通過getPresignedObjectUrl()方法生成的文件地址鏈接,無論是是公有桶還是私有桶,都可以正常訪問。與getObjectUrl()方法生成的文件預覽地址相比,它帶有過期時間,這樣設計的目的也是為了保護文件資源,避免頻繁竊取。

03、小結

最后總結一下,本文主要圍繞利用 minio 實現對象存儲服務,進行了一次知識內容的總結。

在實際的使用過程中,通常會這樣處理。

  • 如果當前文件不包含隱私信息,比如圖片,可以配置公共訪問權限,構建永久訪問鏈接。
  • 如果當前文件包含隱私信息,比如營業執照圖片,可以配置私有桶,構建帶有有效時長的訪問鏈接,比如配置過期時間1小時等。

示例代碼地址:

https://gitee.com/pzblogs/spring-boot-example-demo

04、參考

1.https://minio.org.cn/docs/minio/container/index.html

責任編輯:武曉燕 來源: 潘志的研發筆記
相關推薦

2023-10-28 09:08:19

微服務saas私有化

2025-04-29 08:04:10

DeepSeek私有化部署數字化轉型

2025-05-14 02:00:00

DeepSeek私有化部署

2023-06-01 11:36:41

ChatGLM-6B

2013-03-26 09:40:58

戴爾私有化收購

2013-04-22 17:14:12

2025-09-10 07:57:44

SpringBootMinio存儲

2022-05-20 11:23:01

火山引擎A/B 測試ToB 市場

2017-03-01 14:30:48

存儲云私有云公有云

2017-03-03 10:18:13

存儲云APIGUI

2020-10-11 21:00:31

開發存儲服務技術

2015-10-10 11:08:38

360周鴻祎私有化

2020-05-25 16:00:24

工具代碼開發

2010-06-08 10:53:54

戴爾

2025-03-07 07:57:56

SpringDeepSeek智能

2024-01-07 13:17:06

Helm云原生微服務

2013-05-23 10:39:00

2013-09-16 10:21:44

戴爾私有化PC
點贊
收藏

51CTO技術棧公眾號

精品视频在线播放免| 久久久国产精品不卡| 色中色综合影院手机版在线观看| 已婚少妇美妙人妻系列| 在线观看免费版| 国产精品综合网| 欧美一级视频免费在线观看| 免费在线观看黄色小视频| 澳门成人av| 91福利在线播放| 黄色特一级视频| av女优在线| 91丨九色porny丨蝌蚪| 国产区精品在线观看| 久久狠狠高潮亚洲精品| 福利欧美精品在线| 欧美亚洲高清一区| 欧美成人三级在线视频| 亚洲 小说区 图片区 都市| 麻豆成人久久精品二区三区红 | 国产91精品不卡视频| 精品熟妇无码av免费久久| 牛牛视频精品一区二区不卡| 欧美精品在欧美一区二区少妇| 欧美 日韩 国产 在线观看| 亚洲 小说区 图片区 都市| 亚洲免费影院| 色综合色综合网色综合| av资源在线免费观看| 思热99re视热频这里只精品| 欧美va亚洲va香蕉在线| 阿v天堂2017| 在线播放蜜桃麻豆| 亚洲欧美自拍偷拍色图| 日本一区二区久久精品| 五月婷婷在线播放| 日韩精品1区2区3区| 97精品欧美一区二区三区| 欧美做爰爽爽爽爽爽爽| 欧美顶级毛片在线播放| 精品人在线二区三区| 亚洲一区二区三区四区精品| 午夜不卡一区| 亚洲va国产va欧美va观看| 裸体裸乳免费看| 尤物视频在线免费观看| 日本一区二区三区国色天香| 亚洲最大av网站| 一区二区的视频| 麻豆一区二区三区| 国产精品私拍pans大尺度在线| 9999热视频| 91久久电影| 精品国产欧美一区二区五十路| 亚洲高清无码久久| 成人精品高清在线视频| 欧美三级视频在线观看| 久久久久久久久久久久91| 日韩av电影资源网| 欧美日韩亚洲综合在线 | 亚洲成人二区| 久久精品青青大伊人av| av成人免费网站| 欧美日本国产| 亚洲91精品在线观看| 日本在线免费观看| 久久精品二区三区| 国产精品久久久久久久久久久不卡 | 97人人澡人人爽91综合色| 日韩欧美国产一区二区在线播放 | 精品视频久久久久久| 西西大胆午夜视频| 九九热爱视频精品视频| 中文字幕日韩av电影| 国产天堂av在线| 亚洲激情自拍| 国产精品电影一区| 国产乱人乱偷精品视频| 成人99免费视频| 欧美性xxxx69| 精品自拍一区| 亚洲成人第一页| 丁香啪啪综合成人亚洲| 日本电影久久久| 欧美精品一区二区三区在线 | gogo亚洲高清大胆美女人体 | 亚洲女人天堂成人av在线| 国产高清一区二区三区四区| 手机在线电影一区| 久久久久久九九九| 中文字幕一区二区三区四区欧美| 六月婷婷一区| 亚洲a成v人在线观看| 亚洲天堂999| 成人午夜视频在线| 亚洲电影免费| 成人免费网站观看| 欧美三级电影网| 深田咏美中文字幕| 成人精品影院| 91爱爱小视频k| 国产精品一区二区人人爽| 不卡的电视剧免费网站有什么| 国产欧美日韩伦理| 91在线不卡| 欧美日韩国产精品一区二区不卡中文 | 亚洲黄色免费在线观看| 99九九热只有国产精品| 97av视频在线| 国产黄色一区二区| 欧美激情一区在线观看| 免费一级特黄毛片| 成人免费无遮挡| 日韩欧美一区二区视频| 波多野结衣三级视频| 日韩成人亚洲| 亚洲精品久久久一区二区三区| 日本一区二区在线免费观看| 国产精品videosex性欧美| 奇门遁甲1982国语版免费观看高清| 国产熟妇一区二区三区四区| 成人免费毛片高清视频| 91看片淫黄大片91| 亚洲网站免费| 中文字幕成人精品久久不卡| 午夜精品久久久久久久久久久久久蜜桃 | av亚洲精华国产精华精| 日本一区二区三区视频免费看| 在线a人片免费观看视频| 日韩欧美亚洲一二三区| 国产精品九九视频| 午夜天堂精品久久久久| 国产精品一二三在线| 国产欧美第一页| 国产精品二区一区二区aⅴ污介绍| 日本一级黄视频| 日韩在线激情| 最近2019中文字幕在线高清| 一级一级黄色片| 国产亚洲精品久| 久久久久久香蕉| av永久不卡| 国产精品免费在线免费| 国产免费av在线| 尤物视频一区二区| 在线观看一区二区三区视频| 婷婷久久国产对白刺激五月99| 91国语精品自产拍在线观看性色| 在线视频 中文字幕| 欧美高清在线精品一区| 一卡二卡三卡视频| 国内精品麻豆美女在线播放视频| 中文字幕欧美日韩精品 | 亚洲国产日韩a在线播放性色| 日韩精品一区二区三区不卡 | 亚洲人体偷拍| 国产日韩欧美二区| 性欧美18~19sex高清播放| 亚洲男人av在线| 五月婷婷丁香在线| 国产精品伦一区二区三级视频| 国产一级爱c视频| 欧美激情极品| 国产精品久久久久久超碰| 天天干天天摸天天操| 第一福利永久视频精品| 欧美日韩高清丝袜| 激情综合网最新| 国产女主播自拍| 要久久电视剧全集免费| 性色av一区二区三区红粉影视| 国产精品一级二级| 亚洲午夜精品一区二区三区他趣| 日本中文字幕观看| 午夜电影亚洲| 久久综合久久综合这里只有精品| 乱插在线www| 精品在线欧美视频| 在线观看黄色国产| 亚洲一区二区精品视频| 波多野吉衣中文字幕| 9国产精品视频| 色综合久久88色综合天天提莫| 亚洲美女尤物影院| 日韩中文字幕国产| 中国一级特黄视频| 亚洲综合一区二区| 女女互磨互喷水高潮les呻吟| 老司机精品福利视频| 熟妇熟女乱妇乱女网站| 日韩三级av| 成人精品一区二区三区| 亚洲电影观看| 九九热精品在线| 韩日视频在线| 色哟哟国产精品| 亚洲成年人在线观看| 日韩精彩视频在线观看| 韩国无码av片在线观看网站| 网站一区二区| 欧美—级a级欧美特级ar全黄| 亚洲精品.www| 欧美日韩五月天| 久久免费激情视频| 一区二区理论电影在线观看| 永久免费av无码网站性色av| 99这里只有精品| 两性午夜免费视频| 秋霞电影网一区二区| 一区二区三区在线视频111| 久久av国产紧身裤| 91在线无精精品一区二区| 日韩视频网站在线观看| 久久久久久久国产精品| 国产激情视频在线观看| 国产一区二区精品丝袜| 天天爱天天干天天操| 欧美一二三区在线| 一本久道久久综合无码中文| 一本色道久久综合精品竹菊| 日韩精品视频免费看| 亚洲免费看黄网站| 69夜色精品国产69乱| 欧美极品少妇xxxxⅹ高跟鞋| 无码人妻精品一区二区三区温州 | 日本一区二区三区在线观看视频| 91久久一区二区| 精品在线播放视频| 亚洲va欧美va人人爽| 妺妺窝人体色www在线下载| 中文字幕在线观看不卡| 中文字幕乱视频| 国产精品88888| 日本xxxx免费| 国产不卡视频一区二区三区| 亚洲综合在线一区二区| 免费视频一区| 亚洲国产精品视频| 咪咪色在线视频| 日韩精品久久久久久久电影99爱| 成人动漫网站在线观看| 福利一区二区三区视频在线观看| 久久久久久久久爱| 男女在线观看视频| 精品在线小视频| 青青操在线视频| 亚洲色图av在线| 国产51人人成人人人人爽色哟哟| 欧美一级一区二区| 精品二区在线观看| 欧美mv日韩mv国产网站| 亚洲精品成人电影| 欧美日韩激情一区二区三区| 在线观看日批视频| 欧美肥妇毛茸茸| 国产高清在线免费| 亚洲第一天堂av| 天天干在线观看| 日韩精品专区在线| 黄片毛片在线看| 精品无人国产偷自产在线| 韩国三级av在线免费观看| 一区二区成人精品| 免费人成黄页在线观看忧物| 亚洲色图av在线| 欧美日韩在线资源| 欧美多人爱爱视频网站| 日产福利视频在线观看| 国产精品高潮粉嫩av| 深夜福利亚洲| 国产激情美女久久久久久吹潮| 91麻豆精品| 国产精品日本一区二区| 免费av一区二区三区四区| 中日韩在线视频| 99精品福利视频| 亚洲精品久久久中文字幕| 国产成人日日夜夜| 亚洲午夜福利在线观看| 中文字幕一区二区三区色视频| 国产一二三四区在线| 依依成人综合视频| 69视频免费看| 日韩丝袜情趣美女图片| 神马亚洲视频| 久久中文字幕在线视频| 中文字幕21页在线看| 成人在线中文字幕| 国产精品va视频| 乱色588欧美| 亚洲成人精品| 成人一区二区三| 国产激情视频一区二区在线观看| 特种兵之深入敌后| 91丨国产丨九色丨pron| 国模无码国产精品视频| 色哟哟精品一区| 成人午夜免费在线观看| 最近2019中文字幕在线高清| 欧美办公室脚交xxxx| 91久久久国产精品| 蜜桃成人av| 国产日韩av网站| 国产美女一区二区| 超碰97av在线| 欧美日韩国产综合新一区 | 高潮毛片无遮挡| 一区二区三区四区在线播放| 国产午夜久久久| 欧美日韩国产页| 亚洲精品人妻无码| 久久亚洲国产精品| jizzyou欧美16| 久久综合中文色婷婷| 日韩av在线播放网址| 欧美极品欧美精品欧美图片| 国产成人午夜电影网| 黑人狂躁日本娇小| 亚洲主播在线播放| 国产精品久久久久久久久毛片 | 麻豆成人久久精品二区三区小说| 国产女同无遮挡互慰高潮91| 久久精品免费在线观看| 日本一级片免费看| 精品国产乱码久久久久久浪潮| 日中文字幕在线| 久久久久久久色| av毛片精品| 国产精品无码电影在线观看| 国产一区二区日韩精品| 亚洲av无一区二区三区| 欧美亚洲日本国产| 爱爱爱免费视频在线观看| 国产xxx69麻豆国语对白| 午夜a一级毛片亚洲欧洲| 成人一区二区免费视频| 国产.欧美.日韩| 在线免费观看麻豆| 国产精品美女一区二区三区| 国产成人自拍偷拍| 国产亚洲精品美女| 欧美大片网站| 亚洲综合av一区| 国精产品一区一区三区mba桃花| 日本黄色免费观看| 精品免费在线观看| 欧美在线一卡| 国产精品极品美女在线观看免费| 成人知道污网站| 欧美亚洲黄色片| 99久久综合精品| 探花视频在线观看| 亚洲欧美国产视频| 97精品国产99久久久久久免费| 国产乱码一区| 久久精品免费一区二区三区| 伊人国产精品视频| 一区二区成人在线| 少妇人妻一区二区| 欧亚精品中文字幕| 成人激情在线| 苍井空张开腿实干12次| 五月激情丁香一区二区三区| 免费国产在线观看| 国产日韩欧美在线观看| 国产精品v亚洲精品v日韩精品| 欧美成人三级在线播放| 综合分类小说区另类春色亚洲小说欧美| yjizz国产| 中文字幕av一区中文字幕天堂 | 日本激情视频在线观看| 亚洲va电影大全| 亚洲深夜影院| 亚洲一区 欧美| 精品区一区二区| 久久青青色综合| 欧美三级华人主播| 狠狠色丁香久久婷婷综合_中| 538精品视频| 欧美videos大乳护士334| 欧美极品免费| 男女激烈动态图| 99精品国产99久久久久久白柏| 国产一级做a爰片在线看免费| 日韩欧美中文一区二区| 亚洲精品中文字幕| 黄频视频在线观看| 99久久精品99国产精品| 亚洲国产无线乱码在线观看| 国产一区二区精品丝袜| 亚洲国产欧美在线观看| 日本老熟妇毛茸茸| 亚洲综合免费观看高清在线观看| 精品人妻午夜一区二区三区四区| 欧美精品亚州精品| 奇米狠狠一区二区三区| 熟女人妻一区二区三区免费看| 午夜欧美大尺度福利影院在线看| 色婷婷av一区二区三区之红樱桃 | 在线观看亚洲欧美|