亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

GitHub CLI 的 Codespaces gRPC 協(xié)議緩沖區(qū)生成指南:從 .proto 契約到可測試客戶端

GitHub CLI 的 Codespaces gRPC 協(xié)議緩沖區(qū)生成指南:從 .proto 契約到可測試客戶端 GitHub CLI 的 Codespaces gRPC 協(xié)議緩沖區(qū)生成指南從 .proto 契約到可測試客戶端【免費(fèi)下載鏈接】cliGitHub’s official command line tool項(xiàng)目地址: https://gitcode.com/GitHub_Trending/cli/cli本文圍繞倉庫中的 internal/codespaces/rpc/generate.md 展開完整講解 GitHub CLIghCodespaces 模塊中 gRPC 協(xié)議緩沖區(qū)的生成與新增流程安裝protoc工具鏈與moq、運(yùn)行 generate.sh 生成 Go 代碼與 mock 的每一步以及如何為一個新服務(wù)添加.proto契約。讀完本文后你將能夠復(fù)現(xiàn)該模塊的代碼生成全流程理解生成產(chǎn)物*.pb.go、*_grpc.pb.go、*.mock.go如何被 invoker.go 的 RPC 客戶端與測試用例消費(fèi)并掌握新增協(xié)議時的檢查清單。背景gh 為什么需要一套本地 gRPC 客戶端gh codespace系列命令gh codespace ssh、gh codespace jupyter、gh codespace logs、gh codespace rebuild等在操作 Codespace 時除了調(diào)用 GitHub REST/GraphQL API 之外還需要與運(yùn)行在 Codespace 容器內(nèi)部的 RPC 服務(wù)通信例如啟動 JupyterLab、啟動 SSH 服務(wù)器、重建容器。這套通信基于 gRPC。從 internal/codespaces/rpc/invoker.go 的常量定義可以看到關(guān)鍵事實(shí)容器內(nèi)部的 RPC 服務(wù)固定監(jiān)聽端口codespacesInternalPort 16634客戶端以clientName gh的身份上報connected、keepAlive等客戶端活動事件連接建立時帶有ConnectionTimeout 5s單次請求帶有requestTimeout 30s的超時控制。調(diào)用關(guān)系上各命令入口都通過rpc.CreateInvoker(ctx, fwd)創(chuàng)建 Invoker見 states.go、pkg/cmd/codespace/jupyter.go、pkg/cmd/codespace/rebuild.go、pkg/cmd/codespace/ssh.go再借助 portforwarder 把遠(yuǎn)端 16634 端口隧道到本地臨時端口由grpc.NewClient連接本地監(jiān)聽地址完成調(diào)用invoker.go 的connect函數(shù)。而 Invoker 所依賴的三個 gRPC 客戶端接口全部來自下面要講的協(xié)議緩沖區(qū)生成流程的產(chǎn)物。目錄結(jié)構(gòu)與生成產(chǎn)物internal/codespaces/rpc目錄下按服務(wù)分目錄組織每個服務(wù)對應(yīng)一份.proto契約與三個生成文件internal/codespaces/rpc/ ├── generate.md # 生成流程文檔 ├── generate.sh # 一鍵生成腳本 ├── invoker.go # gRPC 客戶端實(shí)現(xiàn)消費(fèi)生成代碼 ├── invoker_test.go # 使用 mock 的單元測試 ├── codespace/ │ ├── codespace_host_service.v1.proto │ ├── codespace_host_service.v1.pb.go # protoc-gen-go 生成 │ ├── codespace_host_service.v1_grpc.pb.go # protoc-gen-go-grpc 生成 │ └── codespace_host_service.v1.proto.mock.go # moq 生成 ├── jupyter/ │ ├── jupyter_server_host_service.v1.proto │ ├── jupyter_server_host_service.v1.pb.go │ ├── jupyter_server_host_service.v1_grpc.pb.go │ └── jupyter_server_host_service.v1.proto.mock.go ├── ssh/ │ ├── ssh_server_host_service.v1.proto │ ├── ssh_server_host_service.v1.pb.go │ ├── ssh_server_host_service.v1_grpc.pb.go │ └── ssh_server_host_service.v1.proto.mock.go └── test/ └── port_forwarder.go # 測試用 PortForwarder 實(shí)現(xiàn)當(dāng)前倉庫中定義了三份服務(wù)契約目錄服務(wù)名RPC 方法用途codespace/CodespaceHostNotifyCodespaceOfClientActivity、RebuildContainerAsync上報客戶端活動心跳、重建容器jupyter/JupyterServerHostGetRunningServer啟動/獲取 JupyterLab 服務(wù)器返回端口與 URLssh/SshServerHostStartRemoteServerAsync啟動遠(yuǎn)端 SSH 服務(wù)器返回端口、用戶與消息以 codespace_host_service.v1.proto 為例契約結(jié)構(gòu)非常緊湊syntax proto3; option go_package ./codespace; package Codespaces.Grpc.CodespaceHostService.v1; service CodespaceHost { rpc NotifyCodespaceOfClientActivity (NotifyCodespaceOfClientActivityRequest) returns (NotifyCodespaceOfClientActivityResponse); rpc RebuildContainerAsync (RebuildContainerRequest) returns (RebuildContainerResponse); } message NotifyCodespaceOfClientActivityRequest { string ClientId 1; repeated string ClientActivities 2; } message NotifyCodespaceOfClientActivityResponse { bool Result 1; string Message 2; } message RebuildContainerRequest { optional bool Incremental 1; // proto3 optional 字段 } message RebuildContainerResponse { bool RebuildContainer 1; }注意RebuildContainerRequest中使用了 proto3 的optional字段對應(yīng)生成客戶端里的*bool指針字段見下文 invoker 的用法。這正是生成腳本需要--experimental_allow_proto3_optional參數(shù)的原因。生成協(xié)議緩沖區(qū)完整步驟這部分完整繼承自 generate.md并按倉庫實(shí)際情況補(bǔ)充了細(xì)節(jié)安裝protoc編譯器Google Protocol Buffers 編譯器安裝方式參考 gRPC 官方安裝文檔安裝 Go 的協(xié)議編譯器插件protoc-gen-go與protoc-gen-go-grpc兩個go install插件即可安裝 mock 生成器go install github.com/matryer/moqlatest進(jìn)入internal/codespaces/rpc目錄運(yùn)行./generate.sh。腳本會先做工具鏈自檢依次執(zhí)行protoc --version、protoc-gen-go --version、protoc-gen-go-grpc --version缺失protoc或protoc-gen-go時直接報錯退出generate.sh。generate.sh的核心邏輯是一個generate函數(shù)對三個契約分別執(zhí)行g(shù)enerate.shfunction generate { local dir$1 local proto$2 local contract$dir/$proto protoc --go_out. --go_optpathssource_relative --go-grpc_out. --go-grpc_optpathssource_relative $contract --experimental_allow_proto3_optional echo Generated protocol buffers for $contract services$(grep -Eo service . { $contract | awk {print $2 Server}) moq -out $contract.mock.go $dir $services echo Generated mock protocols for $contract } generate jupyter jupyter_server_host_service.v1.proto generate codespace codespace_host_service.v1.proto generate ssh ssh_server_host_service.v1.proto逐行解讀這三個參數(shù)與兩步生成--go_out. --go_optpathssource_relative由protoc-gen-go生成消息類型*.pb.go輸出到當(dāng)前目錄且生成路徑跟隨源文件相對路徑——所以產(chǎn)物落在codespace/、jupyter/、ssh/各自目錄下而不是平鋪在根目錄--go-grpc_out. --go-grpc_optpathssource_relative由protoc-gen-go-grpc生成 gRPC 客戶端/服務(wù)端存根*_grpc.pb.go同樣按源文件相對路徑落位--experimental_allow_proto3_optional允許 proto3 的optional字段RebuildContainerRequest.Incremental就依賴它grep -Eo service . {從契約中提取service名如CodespaceHostawk {print $2 Server}拼接成接口名CodespaceHostServer再交給moq生成該接口的 mock 實(shí)現(xiàn)文件moq -out $contract.mock.go $dir $services。生成后的文件頭部會標(biāo)注生成工具與版本例如 codespace_host_service.v1_grpc.pb.go 開頭注明由protoc-gen-go-grpc v1.2.0/protoc v3.12.4生成codespace_host_service.v1.proto.mock.go 開頭注明由moq生成——這些都是// DO NOT EDIT的產(chǎn)物手工修改會在下次./generate.sh運(yùn)行時被覆蓋。生成代碼如何被消費(fèi)Invoker 調(diào)用鏈生成的三個 gRPC 客戶端接口在 invoker.go 中被組裝進(jìn)Invoker接口type Invoker interface { Close() error StartJupyterServer(ctx context.Context) (int, string, error) RebuildContainer(ctx context.Context, full bool) error StartSSHServer(ctx context.Context) (int, string, error) StartSSHServerWithOptions(ctx context.Context, options StartSSHServerOptions) (int, string, error) KeepAlive() }CreateInvokerinvoker.go先經(jīng) portforwarder 把遠(yuǎn)端 16634 端口隧道到本地隨機(jī) TCP 端口再執(zhí)行g(shù)rpc.NewClient(localAddress, ...)建立連接然后為三個服務(wù)各創(chuàng)建一個客戶端invoker.jupyterClient jupyter.NewJupyterServerHostClient(conn) invoker.codespaceClient codespace.NewCodespaceHostClient(conn) invoker.sshClient ssh.NewSshServerHostClient(conn)隨后連接上即發(fā)送一次connected心跳并啟動每 60 秒一次的后臺心跳 goroutineinvoker.go。典型業(yè)務(wù)方法如StartSSHServerWithOptionsinvoker.go讀取用戶公鑰文件 → 調(diào)用sshClient.StartRemoteServerAsync→ 校驗(yàn)Result、解析端口、用正則校驗(yàn)返回的用戶名合法性。RebuildContainer則體現(xiàn)了 proto3optional字段的客戶端形態(tài)Incremental: incrementalinvoker.go。單元測試如何消費(fèi) moq 產(chǎn)物moq生成的*ServerMock在 invoker_test.go 中被嵌入一個mockServer結(jié)構(gòu)體三個 mock 接口聚合在一起實(shí)現(xiàn)真實(shí)的 gRPC 服務(wù)端type mockServer struct { jupyter.JupyterServerHostServerMock codespace.CodespaceHostServerMock ssh.SshServerHostServerMock }測試通過grpc.NewServer()注冊三個 mock 服務(wù)并在本地 16634 端口起真實(shí) gRPC serverinvoker_test.go配合 test/port_forwarder.go 中一個只做本地 TCP 雙向拷貝的測試用 PortForwarder讓CreateInvoker走完整的“端口轉(zhuǎn)發(fā) gRPC 連接”鏈路。例如TestStartJupyterServerSuccess通過給 mock 的GetRunningServerFunc賦值來模擬服務(wù)端響應(yīng)再斷言 Invoker 返回的端口與 URL并驗(yàn)證連接建立時發(fā)出了connected活動通知invoker_test.go。也就是說修改.proto后重新運(yùn)行 generate.shmock 文件會同步再生成測試中的字段與斷言即可繼續(xù)基于最新契約編寫。添加新的協(xié)議緩沖區(qū)generate.md 給出的新增契約流程如下這里結(jié)合現(xiàn)有三個服務(wù)目錄的實(shí)際組織方式補(bǔ)充為可執(zhí)行清單下載.proto契約從 Codespaces 側(cè)的服務(wù)倉庫獲取對應(yīng)服務(wù)的.proto文件命名遵循xxx_host_service.v1.proto慣例創(chuàng)建新目錄并拷貝契約在internal/codespaces/rpc下新建一個以服務(wù)命名的子目錄參照codespace/、jupyter/、ssh/的布局將.proto拷入其中確認(rèn).proto內(nèi)的option go_package指向該目錄如option go_package ./codespace;更新 generate.sh在腳本末尾追加一行g(shù)enerate 新目錄 新契約文件名將其納入生成列表當(dāng)前腳本末尾是三行g(shù)enerate jupyter/codespace/ssh ...調(diào)用運(yùn)行生成流程重復(fù)上文“生成協(xié)議緩沖區(qū)”的步驟確認(rèn)工具鏈在 PATH 中然后在internal/codespaces/rpc下執(zhí)行./generate.sh檢查目錄下新增了*.pb.go、*_grpc.pb.go與*.proto.mock.go三個文件接入 Invoker在 invoker.go 的invoker結(jié)構(gòu)體中新增對應(yīng)客戶端字段、在connect中初始化該客戶端、為Invoker接口補(bǔ)充對外方法補(bǔ)充測試參照 invoker_test.go 中mockServer的寫法嵌入新的*ServerMock為新方法編寫成功/失敗兩條用例運(yùn)行g(shù)o test ./internal/codespaces/rpc/...驗(yàn)證。常見注意事項(xiàng)工具鏈版本腳本只校驗(yàn)三個工具存在不鎖定版本生成文件頭注釋記錄了當(dāng)次使用的protoc-gen-go-grpc與protoc版本當(dāng)前為protoc-gen-go-grpc v1.2.0、protoc v3.12.4跨環(huán)境生成時版本差異可能產(chǎn)生格式級 diff屬正?,F(xiàn)象pathssource_relative 與目錄一一對應(yīng).proto放在哪個子目錄產(chǎn)物就落在哪個子目錄這是generate.sh用--go_optpathssource_relative實(shí)現(xiàn)的約定移動契約文件位置會導(dǎo)致生成路徑變化moq 依賴 service 名mock 生成靠grep提取service xxx {聲明契約中若沒有 service 聲明純消息定義文件則不會生成 mock這類文件也不需要不要手改生成文件三個產(chǎn)物文件均標(biāo)注 DO NOT EDIT任何契約變更都應(yīng)走“改.proto→ 重跑./generate.sh”的路徑保證消息類型、gRPC 存根與 mock 三者一致。小結(jié)internal/codespaces/rpc/generate.md描述的是一條“.proto契約 → protoc/protoc-gen-go/protoc-gen-go-grpc moq → 消息類型 gRPC 存根 mock”的標(biāo)準(zhǔn)生成流水線由 generate.sh 一鍵執(zhí)行產(chǎn)物直接支撐 invoker.go 中 Jupyter 啟動、SSH 服務(wù)器啟動、容器重建與活動心跳四類 RPC并被 invoker_test.go 中基于 mock 的真實(shí) gRPC 測試鏈路驗(yàn)證。理解并復(fù)現(xiàn)這套流程就能為gh codespace的遠(yuǎn)端能力擴(kuò)展新增協(xié)議契約時做到代碼生成、客戶端接入與測試三者同步演進(jìn)?!久赓M(fèi)下載鏈接】cliGitHub’s official command line tool項(xiàng)目地址: https://gitcode.com/GitHub_Trending/cli/cli創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
男女性感激情网站| 91三级理论片播放器| 人人摸.人人色| 自偷自拍的亚洲视频| 91色综合激情| 伊人天天久久动态图| 日韩不卡毛片Av免费高清| 夜夜嗨AV一区天天| 久久久久国色αv免费观看| 亚州综合| 亚欧无码在线| 西西美女视频网| A 天堂| 国产大学生高潮在线播放| 天天摸夜夜操视频| 午夜福利激情在线视频| 在线观看视频91| 无码人妻精品酒店| 日韩AV电影网站| 欧美日韩国产色五月综合在线| 不卡中文字幕aⅴ在线| 99色色网| 东北女人操逼| 丝袜无码a片| 蜜臀久久99精品久久久久| 欧亚性爱视频免费看| 亚洲人久久久网| 2017人人操,人人摸| 99热超碰| 不卡一区二区日本视频| 91 国产丝袜在线播放-百度| 玖玖资源综合在线视频| 91亚.色| 精品999999| 色色五月天婷婷| 精精品人妻一区二区三区| 曰韩成人免费视频| 一区二区无码视频| 九九伊人网| 美女十八禁| 啊灬啊灬啊灬好深灬快高潮了动漫-国产字幕国产在线观看-B049AV | 国产一在线观看| 天天综合网入口~91| 日韩欧美大片免费高清啪啪| 男人的天堂在线| 黄页视频网站野外| 久久9精品| 激情婷婷五月天| 99热在线播放| 欧美亚洲AN| 人妻少妇被猛烈进入中| 久久久九| 久久精品人体| 中文字幕一区二区韩| 久操影视| 国产精品久久久亚洲一区| 久草加勒比一区在线| 九九九综合精品| 新久久AV| 蜜汁欧美| 日本999精品视频| 404操逼福利视频| 亚洲 中文 欧美 日韩 在线| 精品免费1| 亚洲第一精品在线视频| 91男人综合| 久久婷婷一区二| 成人五级久久| 日韩欧美麻豆 | 亚洲国产婷婷在线播放| 亚洲综合有码| 精品国产乱码久久久兰草影视| 99re6久热只有精品6在线直播| 国产无遮挡| 一起草视频在线| 秋霞男人网| 中文字幕在线日亚州9| 边做饭边操逼逼| 欧美一二级| 九九在线精品| 国产懂色精品国产av| 999国产精品999久久久久久| 亚拍在线| 欧美九九99久久精品| 国产高清MV操逼视频| 久久一二三四| 亚洲色图日韩丝袜制服一区二区五月在线 | 久操高青| 99热婷婷| 91在线视频观看国产| 97超碰超碰| 国产免费一区| 亚州黄站| AV麻豆免费一区| 人人妻人人色一区二区三区| 成人十八禁日韩欧美一二三| 男人下部插入女人下部| 亚洲精品一区二区三区新线路| 岛国视频免费在线观看| 国产Aα| 国产精品美女久久久久久网站| 精品少妇一区二区三区| 超碰精品97| 国产 大胆 对白| 97色在线观看| 一个人在线看的黄色电影网站| 久无码| 国产精品久久久久久照片| 外国免费性情大片| 久久久555| 欧洲站一级二级三级h| 亚洲欧美综合色| 欧美久久九九| 亚洲青色欧美| 新怡红院| 综合少妇网| 黄色av播放免不| 亚洲国内精品成人不卡| 超碰1997| 国产日韩中文字幕欧美| 九99久久| 久久9免费视频| 5252色欧美在线男人的天堂| 干B网| 后入福利| 蜜桃天美传媒AV一区二区三区| 91少妇通奸网站| 欧美色图 人妻| 91n.欧美| 久久久四区| 啊啊啊好想要| 亚洲电影中字一区二区| 精品国产91内射久久| 国产色综合亚洲色综合吹潮| 国产精品呦一区二区三区| 97香蕉网| 日本国产欧美高清在线| 激情综合色| 992这里有精品| 亚洲精品自拍| 蜜臀一区二区三区在线| 四虎午夜影院| 日韩成人网址| 嗯嗯嗯啊啊啊操的我好爽 | 97在线观看播放视频| 超碰九7| 久久一区,青青青青草视频在线播放| 裸体美女免费看网站青草| 91Chinese在线| 92福利社视频| 国产熟女一区二区丰满| 一本久久久精品| 农村妇女精品一二区| 撸无码不卡免费视频| 成人青青草原伊人| 欧美日韩国产高清在线一二三区| 久久精品99| 久久精品国产99国产精品亚洲| 国产精品一区二区后入| 日本三级精品| 日韩精品操少妇| 免费人人搞97| 不卡六六在线91| 91熟女丨91老女人| 欧美在线视频99| 欧美黄页在线| 欧美黄色手机在线观看| 丝袜美腿91| 久9爱经典视频| 白丝少妇一区二区| 亚洲美女 晚间男人天堂 | 无遮挡一级毛片视频免费的| 国产亚洲中文不卡二区| 久久久国产成人一区二区三区在线| 上海一级黄片| 免费的黄片wwwwww| 五月天激情婷婷| 激情婷婷五月天| 91狠| 少妇99| 国产精品高朝久久久久久久| 啊啊啊啊无码| AA级电影三区| 丁香五月婷婷基地| 中文字幕超碰CAO| 九九九精品一区二区无码| 九九九九免费视频| 五月天伊人网| 人人射人人操人人摸| 亚洲美女精品| 91亚洲欧美综合高清在线| 日韩中文字幕在线视频观看| 国产亚洲色婷婷久久99精品91| 肉动漫无遮挡h在线观看| 亚洲无码日韩电影| 国产v片在线免费观看| 强奸乱伦中文字幕AV| 丁香六月婷婷综合| 国产成人精品必看| 综合欧美亚洲| 亚洲av乱伦色图网站| 啊啊啊啊嗯嗯嗯用力好爽| 亚洲另类色图片| 91色插| 天天干夜夜一操| 蜜桃久久综合视频| 男人的天堂VA| 国产女性无套 免费观看| www.99热在线只有精品| 欧美美女视频| 9久精品| 蜜臀久久精品久久久久视频| 日韩精品国产一区二区| 天天色悠悠激情| 特级毛片特黄久久免费看| 婷婷香蕉欧美在线一区二区三区| 人妻天堂网| 婷婷五月丁香五月| 久久一本大香蕉| 91爱| 亚州成人a∨| 91在线视频国产网站| 97在线免费看| 精品久久久久久AV无码| 伊人久久国产免费观看视频| 欧美人妻制服| 亚洲国产精品久久久久久久久久| 亚洲成人在线资源| 亚洲操操| 秋霞一级鲁丝片A片| 综合久久欧美| 偷拍 精品 另类 四区| 久久精品国产97欧美精品亚洲| 人妻中文字幕精品无码| 97精品97久久| 综合色播| 日韩极品无码B| 热热热热日日漂亮永久永久国产日| 日韩成人精品| 久九9精品| 国产美女高潮叫床视频| 91五十路| 九九免费影片| 中文字幕版| 亚洲一本色道中文无码aV天美| 久久久久99精品成人片蜜臀| 久久久av爱| 97色色视频| 久久久久久亚洲Av无码| 欧美激情在线观看视频| 另类亚洲图色| 欧美亚洲日韩人妻在线观看| 欧美另类精品xxxx| 国产精品露脸在线观看| 97在线看| 蜜臀99久久精品| 超91综合网| AA特级绝黄| 男人的天堂99| 日韩精品国模| 欧美日韩国产人人| 欧美伦乱爱| 夜夜高潮夜夜爽高清视频一| 亚洲综合色男人网| 综合网欧美在线| 精品久热| 亚 欧 美 综合| 97超碰色五月| 欧美精品99久久久| 欧亚免费视频| 色婷婷99| av日韩在线观看电影| 人人人人插| 国产欧美精选自拍一区| 亚洲激情综合另类男同| 91国产操逼视频| 久久免费9| 精品免费囯产一区二区三区 | 五月丁香色综合| 久久久久9999| www四虎| 热久久91婷婷| 久悠悠av| 99re在线精品78| WWW美腿丝袜香蕉中文| 97在线视频观看免费| 亚州性色| 亚洲h片在线免费观看| 亚洲黄色视频在线观看视频| 亚州AV无码国产精品| 91九色网| 在线小说视频一区| 综合亚洲欧美精品日韩?v| 伊人久久综合影院| 亚洲最大网站av| 五月婷婷激情网| 日本最新免费韩国1区2区视频播放| 91处女在线视频| 亚洲日韩精品一区二区| 99久久精品无码一区二区| 色色色欧美| 口爆欧美91| 亚州中文字幕超碰97| 美女网站黄页| 中文字幕第9页萱萱影音先锋| 噜噜噜在线视频| 夂久色| 人人妻天天做天天爽| 色屁屁影院www国产| 啊视频在线| 麻豆伊人网| 日韩丝袜二区| 久久久艹艹艹| 精品久久久av无码免费| 另类小色呦| 日欧毛片久久| 在线a v| 丝袜喷水在线| 被男人吃奶很爽的毛片| 可能人人看人人摸| 十八禁一区二区无码观看| 欧美性生活男人的天堂| 色婷婷基地| 一二三区精品视频| 毛片电影一区二区三区| 香蕉免费一区二区三区不读| 一级@啪啪视频| 国产白领连续中出在线观看| 夜夜草天天| 欧美色九九九| .精品人妻一区二区三| 国产日本熟女顶级一区二区三区视频| 国产sv美女内射| 床上啊啊啊一区二区三区| 久久女女| 99热色这里只有精品| 老司机香蕉久久久久| 午夜男女爽爽爽在线视频| 亚洲大胆人体av| 免费伦费视频在线观看| 99热日| 人妻欧美| 高跟伊人julia ann| 精品久久无码午夜福利| 久草草一二三四区久久| 爱av免费| 欧美姓爱综合网| 国内精品不卡无毒99999| 加勒比无码一区二区三区| 天美麻豆一区二区三区| 欧美综合在线91| 免费簧片在线观看| 99久久精品国产系列| 99re不伦| 亚洲91av| www.超碰在线| 看一级特黄a大一片| 97在线免费视频观看| 欧美一区二区三区大综合| 色婷婷色99国产综合精品| 97国产精品一区二区传媒公司| 丝袜翘臀后入欧美校园亚洲自拍另类小说一区中文字幕少妇诱惑 | 啊嗯好大视频在线观看| 国产成人网址| 久久九九视频九九视频| 国产黄色小视频网站| 亚洲黄色电影| 97超碰逼| 一级性爱视频免费观看 | 情色五月天就去干| 亚洲欧洲视频小说在线观看| 国产精品麻豆成人av| 青青草原av| 美女诱惑在线一区| 夜夜操天天肏| 欧美日韩人人精品| 国产精品大香蕉| 乳欲人妻办公室奶水| 中文字幕三四区| 狠狠操狠狠燥| 另类 综合 日韩 欧美 亚洲| 久操99| 天天日熟妇| 超碰性爱97| 天天综合色电影| 美腿色图| 91香蕉国产尤物视频| 欧亚日韩中文在线| 日本熟女中文| 欧美性爱超碰97| 91 刺激在线| 青青操日韩| 男女一进一出视频久久| 日韩黄色片子| 影音先锋乱伦资源| 两性综合网| 天天综合97| 五月婷婷性爱| 97美日韩视频| 日日摸日日碰| 国产400孕妇孕交群| www.99色| 日韩国语字幕| 日本性一区| 91视频伊人| 青青草中文-久久青草精品一区二区三| 美女啊啊啊啊pc| 日韩免费簧片| 日韩一级片| 天天日老熟妇| 伊人操操| 国产精品嫩草影院午夜两性 | 亚洲 欧美 另类 综合 偷拍| 亚洲情色 自拍| 欧美性爱www免费版| 色眯眯射| 热无码中文亚洲H一道本一区二区| 麻豆啪啪啪视频| 九九九草| 日韩av影片在线观看| 国产午夜视频| 岛国片国产成人亚洲播放| 人妻熟女一区在| 97超碰影音| 久久欧美性爱视频| 久久机热| 五月丁香激情综合网| 亚洲美腿丝袜香蕉影视欧美成人| 国产麻豆一级精品视频| 国精综合一二三区影视| 久久无码成人| 可乐操亚洲蜜911| 国产精品久久久久av| 久久久三区二区一区| 大香蕉乱伦视频网| 色综合一区二区三区| 熟妇亚洲一区二区三区| 最新国内自拍av免费| 日韩少妇无吗| 探花激情视频| 久久国产成人精品国产成人亚洲| 99久久com免费视频′| av毛片aaaaa免费看| 91在线欧色| 亚洲一区二区三区春色| 欧美色www亚洲国产阿娇要播| 欧美日韩美女精品久草一区二区三区 | 久久思思热| 天美麻花大全视频| 欧美色人| 亚洲图片在线| 热久久精品| 操逼操逼逼操操逼91| 少妇的嫩逼图片| 97干天天| 韩日精品四区| 国产成人在线观看综合| 亚洲āv网址在线观看| 国产精品夜夜夜| 青青草视频在线观看一区二区| 亚州操逼网| 妇女性内射冈站HDWWWCOM| 黄久久| 人妻美腿丝袜制服诱惑综合天堂-| 中日韩久久久| 丰满岳乱妇一区二区三区| 一区二区三| 亚洲色图8| 日韩大香蕉精品在线视频| 久久久久骚| 免费黄色视频网址| 天天躁日日躁XXXXYY| 女同女同恋久久级三级| 久久大黄片| 久久久久久人体| 99国产精品久久久久久久成人热| 久草成人福利导航| 中文字幕一区 二区三四五 区日 日骚| 亚洲天堂7777| a级成人毛片免费视频高清| 国产精品亚洲无码| 午夜乱轮操逼视频免费看| 东京热一区二区中文字幕| 日骚逼视频| 久9精品| 火箭成精品视频884必出精品| 久久网亚洲| 任你草| 97色妞| 91 亚洲 欧洲| 日韩综合成人免费视频| 精品无码久久久久| 久久久久九九九| 自拍偷拍2025在线观看| 天天综合网1| 26uuu国产成人综合| 啊啊啊啊网站| 92人人操人人| 激情久久av一区av二区av| 992这里有精品| 亚洲丝袜少妇在线| 日本日逼高清| 狠狠爱夜夜| 好爽要喷了| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区 | 亚洲 自拍偷拍 欧美| 欧美 亚洲 综合 制服 另类| 爽爽歪在线视频| 久久久穴999| 天天亚洲| 91综合天天看| 成人羞羞视频国产| 啊灬啊灬啊灬啊灬高潮奶出了免费视 | 亚洲污一污二| 99热这里只有精品1| 欧美亚洲高清| 97色碰| 青青草字幕AV| 无码免费在线观看黄色片| 曰韩av中文字幕专区| 亚州久久9| 97免费视频在线| 亚洲福利中文字幕在线| 久久人妇| 收看日本人日bb| 夜夜爽77777| 日比av无码| 黄网色一区二区三区四区精品| 久久免费看高潮毛片韩国| 诱惑网综合| 六月激情婷婷| 国产精品伦理| 亚洲最大91网| 欧美色亚洲| 国产超碰在线| 久热网| 亚洲图片欧美在线视频| 一本大道青青| 日韩成人电影AV| 熟女熟妇一区二区三区视频| 大色综合网| AV女资源| 国产欧美一区二区| 日本操逼视频在线| 97 国产一区| 成人一级性爱| 久久久久久久久久久精| 国产这里只有精品| jazzjazz国产精品麻豆| 婷婷情色五月天| 国产AV激情无码久久无码| 热久久无毒不卡| 91av天美性媒精品视频| 国产精品一区av在线| 亚洲精品久久久久久| 色综合色综合网| 999久久久| 欧美国产操逼| 九色97| 久久91精品国产9丨久久分亭| 白丝在线一区| 亚洲欧美精品一区天堂久久 | 中日韩熟女| 久午视频| 舔舔啊| 婷婷情色综合网| 久草免费福利在线播放| 欧美性天天| 午夜操一视频一区| 无码久| 精品免费一区二区三区在线亚洲人成| 日本精品无码三级网站| 操狠狠| 精品无码人妻一区二区免费蜜桃| 国产精品香蕉热久久新品| 精品国产乱码久久| 欧美日韩精品久久久久东北老熟妇| 天天做天天爱天天高潮| 国产欧美日本亚洲精品| 美女91在线| 色综合 加勒比| 亚洲色资源| 精品成人av一区二区三区在线| 黄人人操人人操| 91熟女综合| 国产免费小视频| 亚卅熟女乱色| 看看小穴| 青青草手机在线免费观看| 九九av| 亚洲国产综合图区中文字幕 | 亚洲有码第一页| 精品在线78| 亚洲精美粉嫩嫩泬在线观看| 91成人在线免费视频| 亚洲高清在线| 熟女一区二区三区| 狼人狠干| 欧美日韩操逼嗦吊| 目产99999久久999| 成人国产视频在线观看| 国产伦乱91| 国产一区二区在线播放,久久亚洲精品中文字幕第一区,亚洲精品在线中文字幕视频 | AAAA级日本片免费视频| 一区二区三区免费岛国片| 日韩一区二区熟女| …亚洲黄色厕厕女女在线播…| 一线黄色免费性爱片| 精品免费一区二区三区在线亚洲人成| 啪啪啪综合| 五月婷婷激情综合| 亚州精品人妻一二三区| 亚洲欧综合另类无码一区| 中文字幕加勒比海高清无码免费视频 | 国产视频第二页| 亚州中文字幕超碰97| 蜜臀AV成人精品蜜臀| 视频在线观看一二三区| 10000部十八禁看电影| 精品然女一区二区| 上床不卡网站| 97色视频在线| 色噜噜人妻av中文字幕| 老司机福利青青草| 亚洲色系另类精品国产| 亚洲性爱无码乱伦av| 激情一区二区三区在线观看| 手机av天堂久久久久| 日日噜噜夜夜久久亚洲一区二区| 久久精品成人一区二区三区蜜臀| 精品国产乱码久久久影院| 少妇天堂| 男女性感激情网站| 99只有精品| 草久久久| 欧美91丝袜| 狠狠操,使劲操| 久热精品色情| 色色色色电影网| 午夜一区| 污到发麻的视频 国产| 日韩激情无码影院| 色五月激情AV在线| 任你草| 三级日韩一区二区三区| 亚洲永久永久永久永久一级一级一级精品| 国产一级高清免费观看| 亚洲射综合网| 日韩中文字幕视频在线观看| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 色天堂综合| 亚洲资源吧| 留下AⅤ黄色片| 三及片网站| 日韩欧美久久婷婷网站| 精品然女一区二区| 精品国产一级久久| 久久夜黄色无码A级大片| 国产精品久久久久无码Av网曝门| 毛片电影一区二区三区| 中文字幕一区二区视频在线观看| 亚州日韩97| 嗯啊不要在线观看嗯啊| 色就色综合| 五月天日日操夜夜操| 97综合国产精品高潮久久| 激情人妻另类| HEYZO高无码国产精品227| 黄片com.| 91N欧美| 国产欧美日产一区二区三区 - 国产欧美日 | 久久97精品久久久久久久不卡| 天天综合~91| 日日躁夜夜躁狠狠躁超爽| 91欧美www| 久久大陆| 国产AV天美传媒一区二区三区 | 中国国产精品一区视频| 欧洲精品一区二区三区| 防屏蔽在线视频| 激情干在线| 大奶尤物鲍汁淫荡欧美视频粉嫩夜夜骚 | 日日骚网站| 国产日韩手机视频在线| 天堂av2019| 国产又黄又爽| 亚洲综合影视| 眼镜人妻101.com| 美女AV一区二区| 亚洲欧美日韩中文播放| 天天操夜夜嗨| 蜜桃午夜视频一区二区| 午夜精品久久久99热蜜桃的功能特点| 一级做a爰片性色毛片久久| 国产剧情AV不卡在线观看| 97 九色| 激情情色五月天| 吖在线不卡一区二区国产剧情| 日韩精品三区四区| 尤物黄色在线观看网站| 91嫩草欧美| 亚洲熟妇综合久久久久久| 国产精品免费日韩| 一本色道久久综合精品婷婷| 精品四五区| 成人美女av| 99国产精品免费| 中文伊人大香蕉视频| 91 手机在线播放 绯色| 国产日本熟女顶级一区二区三区视频| 青娱乐亚洲热| 啊好大好舒服| 日日夜夜干| 91女在线观看| 欧美韩国你懂得在线 | 日本人妻最新在线中| 97碰碰日本乱偷人妻中文的| 九九aV| 台湾一区国产高清在线| 一本色道人妻久久| 久久久久久中文版| www久久久| 中国一级操逼视频| 视频在线观看青青99国产| 亚洲丝袜色| 色牛牛AV| 97人人操人人摸| 九九九999久久久网站| 色小视频蜜乳| 久久久久久久 九九九九九九九| 中日亚韩免费视频| 少妇久久久免费| 色色操| 免费啪啪一级视频| 日本操逼视频不卡直接放| 91高潮| 超碰偷拍| 97超碰中文| 日本免费一区二| 乱伦图一区| 亚欧毛片基地国产毛片基地| 亚洲少妇在线观看| 国语精品av| 国产AV线| 97超碰久久色| 欧美熟爽综合| 91高潮喷水美女| 外站AV在线| 亚欧日韩成人| 欧美日韩夜夜| 怡红院亚洲怡春院av| 亚洲国产精品无码AV久久| yw尤物av无码点击进入麻豆| 大香网站| 神马视频久久久久久| 大白逼三四级| 国内一级精品| 翔田千里爆乳巨臀无码| 台湾成人无码AV| 最新加勒比丝袜在线| 青青草无码视频| 国产婷婷综合在线观看| 99热91| 久草看看看| 亚欧美综合网。| 东京热大香蕉| 大香蕉乱伦视频网| 国产亚洲 中文欧美久久| 天欧美在线| 琪琪精品免费一区二区三区| 久久精品一区二区三区不卡| 天天影视之亚洲综合网| se吧提供国产乱老熟视频胖女人| 人妻熟女一区在| 亚洲视频小说| 国产精品麻豆成人av| 717影院理论午夜伦八戒| 四虎国产成人精品免费一女五男| 国产av激情无码久久天堂| 日本一区二区三区免费观看| 欧美日韩不卡a片| 日韩激情啪啪| 亚洲少妇色| 亚洲情色五月天| 欧美伦乱爱| 9.1小视频| 久热这里| 91天美| 日韩精品碰碰| 国产免费一区在线观看| 亚洲熟妇图片| 啊啊啊啊啊啊啊啊啊在线观看| 人妻人久久精品中文字幕| 青青草国产一区二区三区| 人妻精品一区一区三区蜜桃91| 裸体美女久久久| 亚洲高清欧美总合| 啪啪性爱免费视频| 干干干天天| 亚洲日韩欧美一区二区| 国产毛片在线| 热热色国产一二区AV| 亚洲图片偷拍视频区| 风流老熟女一区二区三区l| 98久久| 无码精品啪啪啪一区二区三区三州| 骚逼一区二区| 久久久成人精品| 日韩精品电影| 久久男人精品| 五月婷婷hd| 国产强奸乱伦xd| 91精品国久久久久久无码| 中文操逼字幕| 一区二区精品更新提醒| 另类小说综合网| 日日做夜狠狠爱欧美黑人| 欧美色图20p| 中文字幕久热视频在线| 欧美日韩1234| 18禁中文字幕| 日韩欧美亚洲一区二区三区影院| 亚洲精品无码少妇久久| 亚洲AV色图一区| 亚洲国产一级黄色视频| 亚洲天堂另类小说男人| 亚州色图片在线色| 亚洲AV无码黄色强奸| 风间由美日韩欧美久久| 国产极品999| 我要去看2个日本美女.com曹逼| 青娱乐亚洲热| 风间由美日韩欧美久久| 天天综合网视频91| 日韩精品99久久久久久中文字幕| 亚洲美女30b| 国产成人综合在线播放| 五月天久久人妻| 啊啊啊用力在线观看| 国产无码精品高清| 208天天久久九九九| 五月天婷婷欧美三区| 久操操AV电影| 日本一区二区三区四区免费观看| av一区二区三区 中文| 欧美日韩操逼动图| 人妻少妇色综合| 久久成人国产精品| 丝袜喷水在线| 成人一二| 色九九综合| 91精品婷婷国产综合久久| 免费作爱一级视频| 老鸭窝日丰县女人| 国产亚洲精品A在线观看下载| 野狼激情网| 伊人国产视频| 亚洲一卡2卡3卡4卡乱码网站| 本道在线| 国产又粗又长视频| 九九热在线精品视频| 五月丁香久久| 91日韩| 精品二区三四区五电影 | 去干网最新版| 少妇九九九九| 久久婷婷影院| 日本操逼视频导航| 麻豆区久久久久亚| 大伊香蕉在线视频免费| 超碰久草| 婷婷九月| 中文字幕丰满子伦无码专区在线视频最新 | 视频国产欧美在线播放| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 精品国产乱码久久久久久口爆网站| 天堂亚洲精品久久老牛| 成人无码影片视频在线| 国产一区二区在线看| 精品一区二区三区蜜桃臀赵总| 激情文学小说一区二区 | 日韩无码精品综合久久| ai欧美亚洲小说| 日本午夜久久电影| 天天天堂影视日韩亚洲91| 日本女人操逼| 91在线视频国产网站| 大香网伊人久久综合网eew| 日韩一性一交一A片俄罗斯| 国产9熟妇视频网站| 射 色综合| 国产特级毛片AAAAAA高潮流水| 毛片17S| 免费a级毛片av无码久久精品中文字幕| 亚洲熟妇自偷自拍另欧美| 影音先锋乱伦资源| 啊啊啊啊在线播放| 伊人大香蕉在线| 大黄片做爱的大的| 91性网| 性爱边摸边日免费AV| 香蕉视频精品亚洲一区二区三区在线播| 性性久久| 青青伊人这里只有精品| 黄呦呦在线| 乱老熟女一区二区三区| 亚洲色图加勒比| 久久综合日韩亚洲欧美| 伊人久久国产免费观看视频| 97超碰国产精品| 亚洲情色电影网| 久久精品免费| 亚洲综合码| 97色97好| 国产成人拍国产亚洲精品| 色 亚洲 91| 欧美综合站| 秋霞操逼片| 国产午夜视频| 日本3级一区二区免费| 亚洲无码成人精品| 精品人妻一区二区三区免费视频| 91性感网站| 亚洲欧洲小说图片视频| 午夜寂寞欧美| 老司机深夜18禁污污网站| 青青草好吊色| 精品高清牛人盗摄一区二区三区中文字幕A片免费在线观看 | 国产精品久久久久久久久久久久久久久 | 國產尤物AV尤物在線觀看| 午夜舔阴达高潮视频免费看| 欧美后入式| 精品免费一区二区三区在线亚洲人成| 亚洲AV无码国产精品久久久久| 国产粉嫩蜜臀av一区二区三区| 亚洲玖玖爱| 91AV天美在线视频| 97WW精品| 婷婷中文字幕| 亚洲欧洲国产综合av| 欧美日韩色综合网| 思思热在线视频免费| 97超碰中文在线| 亚洲第一页色网| 九九人妻| 日本熟妇自慰性高潮一区二区三区| 777奇米影视777四色| 欧美色视频在线| 久久婷婷亚洲| 欧美亚洲第1页| 久久久久久久综合,国产| 国产美女自拍视频| 久久久久久久久久久免费精品| 超碰97人妻免费在线| 1级午夜影院费免区| 国产亚洲精品农村妇女| 免费的黄片wwwwww| 好吊妞转入那个网| 欧洲中文字幕| 美美91成人国产精品欧美精品久久久久久久| 青苹果影院男人的天堂| 嫩草黄页| 亚洲午夜未满十八勿入网站日本又色又爽又黄 | 俺去俺来也在线www| 日本三级R| 久久露脸国产老熟女| 极品极品色影院| 久久草在线综合视频| 久草视频分类在线| 亚洲综合五月天| A V少妇特黄三级| 久草精品热视| 国产亚卅97| 男人精品天堂一区| 久久久91福利姬| 青青草原av| 国产精品剧情| 国产精品久久久久久高清无码免费看| 亚洲色图尤物视频| 人妻三级在线中文字幕| 亚洲欧洲中文日韩女优乱码| 日韩综合成人免费视频| 久久东京伊人一本到鬼色| 国产亚洲精品av一区| 国产精选三级在线观看| 天天摸,夜夜摸| 亚洲。日韩。欧美| 成人十八禁日韩欧美一二三| 亚洲影视第一页| 超碰97.com| 精品人妻一区二区免费蜜桃视频| 婷婷15月天青娱乐| 色噜噜狠狠色综无码久久合欧美| 亚洲aw毛茸茸在线| 神马午夜久久| 超碰99热| 丝袜高跟澳门91视频| 国产又黄又粗的视频| 天天干一区二区| 精品白丝一区| 熟女精品va中文字幕| 国产又大又粗又长视频在线| 日韩综合97P| 欧美性爱日韩性爱| 色鬼在线综合| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 91高清无码下载| 九色在线熟女国产黑人| 狠狠综合| 98精品国产乱码久久久久久| 97久久超碰日韩精品| 18禁无码永久免费无限制| 人人搞人人插人人操| 日韩去日本高清在| 大香蕉色网| 国产精品白丝www| 精品欧美А∨无码黑人大荫蒂| 香蕉久久国产AV一区二区| 大香蕉伊人在线成人AV在线观看| 天躁夜夜躁2021| 久久精品国产亚洲av水密被窝| 伊人操你| 久久99午夜精品一区人妻| 97蜜桃综合| 亚洲清纯综合| 亚洲精品尤物yw在线影院| 裸体美女免费看网站青草| 劲爆欧美人妖三区91| 蜜臀久久久99久久久久| 国产粉嫩出水在线播放| 大香网伊人久久综合网eew| 玖玖久久久| 久久久精品成人国产| SS久久| 日韩啊V| 色婷婷综合久久久久中文国产精品一区中文字幕,国产福利电影一区二区三区 | 久久久555| 温婉少妇玩3p| 亚洲αv一区二区三区| 九九九九一级| 色狠狠色| 天天激清| 国产成人天堂| 91热爆在线| 97九色| 成人在线永久| AV不卡在线| 国产91 丝袜在线播放| 精品女人999| 九九九热| 久热久操| 免费视频a级毛片免费视频| 亚洲欧美97| 高清不卡视频| 国产精品激情久久久久久久| 91操熟女视频| 欧亚日韩中文在线| 亚洲成A∨人影院在线欢看| 自拍亚洲综合| 手机在线播放国产福利| 美女诱惑1区2区| 91精品操美女| 日韩欧美大力操| 日韩有码免费视频| 人人天天欧洲| 国产91 丝袜在线播放00-百度| 色色国产| 欧美日韩中文视频播放| 怡红院视频在线| 国产精品不卡高清在线观看| 日本天堂网| 欧美的性爱网站免费| 亚洲视频一二区| 搡老熟女免费视频| 97爱爱影院| 精品人体无圣光凹凸| 熟妇激情| 91色久| 91亚.色| 日本精品成人无码| 91狠狠狠| 丁香五月婷婷色| 躁躁躁日日躁2020| 国产精品对白内射| 激情欧美97| 麻豆婷婷成人一二三| 少妇高潮特黄A片| 人妻色情天天操| 又黄又爽在线观看视频| PMv在线观看| 97精品国产精品免费观看| 伊人色综合网电影| 特色a在线上| 日韩午夜国产| 免费A V在线| 亚洲天天综合| 国产乱码久久久久久| 五月天婷婷基地| 亚洲春色欧美激情自拍| 日韩成人人妻网站| 啪啪啪东京| 久久妇| 国模不卡一本二本三电影| 欧美男人一区| 青青久久手机线视频| 久久免费99精品久久久久久| 天天综合网~91| 欧美淫乱视频| 国产精品色| 色拍偷亚洲| 97超碰碰碰| 婷婷99狠狠| av资源在线观看少妇| 亚洲三区视频| 91性高朝久久久久久久久| 日本高清加勒比| 美女诱惑爱爱| 韩美日操逼| 久9爱精品| 91处女视频在线观看| 天美麻花大全视频| 欧美区亚洲区偷拍区| 色悠悠伊人网五月天| 亚州中文字幕超碰97| 国产刺激视频| 欧美日韩 强奸乱伦| 97爱综合| 91操熟女视频| 密臀视频一区二区三区| 97精品综合| 日韩一区二区高清在线观看的| 久操电影| 久久久久久人体| 嗯嗯啊啊啊啊轻点视频| 色综合潮| 亚洲人精品久久久喷水| 青青草丝袜在线视频| 中国少妇XXXX做受| 日韩性爱小视频| 99re98| 人妻丰满熟妇av无码区蜜桃| www被窝色com| 99亚洲人人| 欧美综合加勒比在线| 大香蕉免费中文| 啊视频在线| 老师充足的奶水小说| 99色天堂| 国产原创剧情在线丝袜| 黄色电影观看久久9| 操操吧亚洲乱伦视频| 2018天天日天天日| 天天澡天天爽日日AV| 96久久久久| 国产精品一区二区三区免费视频| 又大又黄国产| 少妇99成人麻豆| 清清草影| 丝袜美腿操av| 骚货操死你|