欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

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

掌握 mise HTTP Backend:從直鏈 URL 安裝任意二進(jìn)制、腳本與歸檔的完整指南

掌握 mise HTTP Backend:從直鏈 URL 安裝任意二進(jìn)制、腳本與歸檔的完整指南 掌握 mise HTTP Backend從直鏈 URL 安裝任意二進(jìn)制、腳本與歸檔的完整指南【免費(fèi)下載鏈接】misedev tools, env vars, task runner項(xiàng)目地址: https://gitcode.com/GitHub_Trending/mi/mise導(dǎo)讀httpbackend 是 mise 中最通用的一類工具后端它不依賴 GitHub Releases、npm、asdf 插件等任何發(fā)布渠道直接從你指定的下載 URL 拉取二進(jìn)制、腳本或歸檔并安裝。本指南圍繞 docs/dev-tools/backends/http.md 展開覆蓋從mise use http:...快速接入、URL 模板變量、平臺(tái)差異配置、校驗(yàn)和/大小校驗(yàn)、版本發(fā)現(xiàn)mise ls-remote到http-tarballs內(nèi)容緩存與鎖文件的完整鏈路。讀完本文你將能為任何只有下載鏈接、沒有現(xiàn)成發(fā)布后端的工具在 mise 中建立可校驗(yàn)、可跨平臺(tái)、可復(fù)現(xiàn)的安裝方案并理解其底層實(shí)現(xiàn)src/backend/http.rs。一、HTTP Backend 是什么何時(shí)使用httpbackend 通過直接下載 URL安裝二進(jìn)制、腳本或歸檔。適用場(chǎng)景非常明確發(fā)布方?jīng)]有提供 mise 支持的發(fā)布后端沒有 GitHub Releases、npm 包、asdf 插件等你自建制品倉庫需要把內(nèi)部工件接入 mise你希望完全控制從哪里下載、校驗(yàn)什么。核心原則文檔原文要求優(yōu)先使用 HTTPS URL并記錄期望的校驗(yàn)和checksum。該后端在源碼中對(duì)應(yīng) src/backend/http.rs 中的HttpBackend結(jié)構(gòu)體其get_type()返回BackendType::Httpsrc/backend/http.rs#L1091-L1093。你可以通過mise use http:工具名[...]版本或直接在mise.toml的[tools]中聲明來使用它。二、快速上手安裝與聲明2.1 命令行方式把示例 URL 換成你平臺(tái)的制品然后在當(dāng)前項(xiàng)目安裝mise use http:my-tool[urlhttps://example.com/releases/my-tool-v1.0.0.tar.gz]1.0.0 mise exec -- my-tool --version執(zhí)行后URL 與版本會(huì)被記錄進(jìn)項(xiàng)目的mise.toml。加-g可安裝為全局工具[tools] http:my-tool { version 1.0.0, url https://example.com/releases/my-tool-v1.0.0.tar.gz }2.2 固定 URL 與latest的邊界關(guān)鍵限制固定 URL 需要一個(gè)具體的版本標(biāo)簽。latest不會(huì)從下載 URL 自動(dòng)發(fā)現(xiàn)新版本——如果你需要mise ls-remote與自動(dòng)版本選擇必須配置version_list_url版本列表 URL。另外僅更新版本號(hào)不會(huì)改變靜態(tài) URL。對(duì)隨版本變化的制品請(qǐng)使用 URL 模板見下一節(jié)例如https://example.com/releases/my-tool-v{{version}}.tar.gz。2.3 支持的語法HTTP backend 的完整工具引用語法為帶 URL 參數(shù)的 HTTP 語法http:my-tool[urlhttps://example.com/releases/my-tool-v1.0.0.tar.gz]1.0.0三、核心選項(xiàng)url與模板變量httpbackend 的選項(xiàng)放在mise.toml的[tools]中參見 docs/dev-tools/index.md#Tool-Options 的通用說明。其中url是必填項(xiàng)——源碼中缺失 URL 時(shí)會(huì)直接報(bào)錯(cuò)Http backend requires url option或提示當(dāng)前平臺(tái)缺少platforms.key.urlsrc/backend/http.rs#L260-L272。3.1 靜態(tài) URL 與模板 URL[tools] http:my-tool { version 1.0.0, url https://example.com/releases/my-tool-v{{version}}.tar.gz }也可使用不含模板的靜態(tài) URL[tools] http:my-tool { version 1.0.0, url https://example.com/releases/my-tool-v1.0.0.tar.gz }3.2 可用模板變量URL 模板使用雙大括號(hào)語法如{{version}}變量說明version工具版本os()操作系統(tǒng)macos、linux或windowsarch()架構(gòu)x64或arm64os_family()OS 家族unix或windowsos()與arch()還支持重映射remapping用于處理命名約定不同的工具。例如 HashiCorp 系工具使用darwin而非macos、amd64而非x64[tools] # HashiCorp 工具使用 darwin 代替 macosamd64 代替 x64 http:sentinel { version 0.26.3, url https://releases.hashicorp.com/sentinel/{{version}}/sentinel_{{version}}_{{os(macosdarwin)}}_{{arch(x64amd64)}}.zip, }上述配置會(huì)生成如下 URLmacOS arm64sentinel_0.26.3_darwin_arm64.zipmacOS x64sentinel_0.26.3_darwin_amd64.zipLinux x64sentinel_0.26.3_linux_amd64.zip這正是倉庫中 registry/sentinel.toml 真實(shí)使用的模板寫法。源碼中template_string_for_target還會(huì)在mise lock時(shí)**為目標(biāo)平臺(tái)而非宿主機(jī)**渲染os()/arch()其單元測(cè)試直接斷言了 Linux/Windows 下的渲染結(jié)果src/backend/http.rs#L1431-L1446。3.3 平臺(tái)專屬 URLtable 形式當(dāng)不同平臺(tái)需要不同下載地址時(shí)使用platforms表[tools.http:my-tool] version 1.0.0 [tools.http:my-tool.platforms] macos-x64 { url https://example.com/releases/my-tool-v1.0.0-macos-x64.tar.gz } macos-arm64 { url https://example.com/releases/my-tool-v1.0.0-macos-arm64.tar.gz } linux-x64 { url https://example.com/releases/my-tool-v1.0.0-linux-x64.tar.gz }平臺(tái)鍵的兼容性說明macos與darwin、x64與amd64均可作為平臺(tái)鍵文檔與示例優(yōu)先使用macos和x64但所有變體都被接受OS/架構(gòu)遵循 mise 約定操作系統(tǒng)為linux、macos、windows架構(gòu)為x64、arm64如果你寫了類似darwin-aarch64的筆誤mise 會(huì)嘗試?yán)斫饽愕囊鈭D并做正確的事。四、完整性校驗(yàn)checksum、checksum_url、checksum_expr 與 size4.1checksum直接聲明從可信來源提供完整期望摘要。下面的值是占位符安裝前必須替換[tools.http:my-tool] version 1.0.0 url https://example.com/releases/my-tool-v1.0.0.tar.gz checksum sha256:REPLACE_WITH_THE_64_HEX_DIGIT_DIGEST提示也可以不在此處聲明校驗(yàn)和改用 mise.lock 統(tǒng)一管理校驗(yàn)和。安裝時(shí)verify_artifact會(huì)對(duì)下載文件執(zhí)行校驗(yàn)src/backend/http.rs#L1246-L1250開啟 lockfile 時(shí)verify_checksum還會(huì)校驗(yàn)鎖文件中記錄的 checksum 與 size不匹配會(huì)直接報(bào)錯(cuò)src/backend/http.rs#L916-L923。4.2 平臺(tái)專屬校驗(yàn)和[tools.http:my-tool] version 1.0.0 [tools.http:my-tool.platforms] macos-x64 { url https://example.com/releases/my-tool-v1.0.0-macos-x64.tar.gz, checksum sha256:REPLACE_WITH_THE_64_HEX_DIGIT_DIGEST, } macos-arm64 { url https://example.com/releases/my-tool-v1.0.0-macos-arm64.tar.gz, checksum sha256:REPLACE_WITH_THE_64_HEX_DIGIT_DIGEST, } linux-x64 { url https://example.com/releases/my-tool-v1.0.0-linux-x64.tar.gz, checksum sha256:REPLACE_WITH_THE_64_HEX_DIGIT_DIGEST, }4.3checksum_url從發(fā)布方獲取校驗(yàn)和checksum_url指向一個(gè)已發(fā)布的校驗(yàn)和來源。設(shè)置后mise lock會(huì)為每個(gè)目標(biāo)平臺(tái)解析校驗(yàn)和——包括當(dāng)前運(yùn)行平臺(tái)之外的其他平臺(tái)——且無需下載制品。這意味著單臺(tái)機(jī)器即可產(chǎn)出完整的跨平臺(tái) lockfile。checksum_url本身也是模板支持{{ version }}、{{ os() }}、{{ arch() }}也可通過platforms.key.checksum_url按平臺(tái)設(shè)置。它可以指向單個(gè)校驗(yàn)和文件如artifact.sha256內(nèi)容可以是純哈希也可以是hash filenameSHASUMS 風(fēng)格文件列出hash filename覆蓋多平臺(tái)按制品文件名匹配行清單文件如 JSON此時(shí)需配合下面的checksum_expr。對(duì)于單個(gè)文件與 SHASUMS 文件算法根據(jù)文件名自動(dòng)檢測(cè)*.sha512、SHA512SUMS、*.md5、*.b3默認(rèn) sha256# 單個(gè)校驗(yàn)和文件每個(gè)制品一個(gè) [tools.http:my-tool] version 1.0.0 url https://example.com/releases/my-tool-{{ version }}-{{ os() }}-{{ arch() }}.tar.gz checksum_url https://example.com/releases/my-tool-{{ version }}-{{ os() }}-{{ arch() }}.tar.gz.sha256 # SHASUMS一個(gè)文件列出所有平臺(tái) [tools.http:other-tool] version 1.0.0 url https://example.com/{{ version }}/other_{{ version }}_{{ os(macosdarwin) }}_{{ arch(x64amd64) }}.zip checksum_url https://example.com/{{ version }}/other_{{ version }}_SHASUMS源碼中的解析順序是平臺(tái)直接聲明的checksum→checksum_expr清單 → SHASUMS 列表按文件名匹配→ 單個(gè)校驗(yàn)和文件src/backend/http.rs#L973-L1032。值得注意的是若 SHASUMS 列表存在但沒有匹配當(dāng)前制品的條目mise 不會(huì)退化為取第一個(gè)哈希而是將該平臺(tái)標(biāo)記為未解析避免錯(cuò)誤鎖定其他平臺(tái)的校驗(yàn)和。4.4checksum_expr從清單中提取當(dāng)校驗(yàn)和位于清單而非純校驗(yàn)和文件中時(shí)用checksum_expr提取。從checksum_url獲取的清單正文會(huì)用 expr-lang 表達(dá)式求值可用變量body原始清單、version、os、arch、url目標(biāo)平臺(tái)的已解析制品 URL、filename。表達(dá)式必須求值為限定符形式的algo:hash字符串如sha256:hash、sha512:hash。算法前綴需在表達(dá)式內(nèi)構(gòu)造算法固定時(shí)拼接字面量sha256: entry.hash算法隨清單變化時(shí)讀取entry.algo : entry.hash[tools.http:my-tool] version 1.10.0 checksum_url https://example.com/versions.json # 匹配 url 等于已解析制品 URL 的條目返回 sha256:hash checksum_expr sha256: filter(fromJSON(body)[version ].files, { #.url url })[0].sha256 [tools.http:my-tool.platforms] linux-x64 { url https://example.com/my-tool-{{ version }}-linux-x86_64.tar.gz } macos-arm64 { url https://example.com/my-tool-{{ version }}-macos-arm64.tar.gz }expr-lang 的兩個(gè)陷阱文檔明確提示謂詞占位符必須寫成{ #... }——{后必須有一個(gè)空格因?yàn)閧#是 Tera 注釋定界符要用運(yùn)行時(shí)值索引 map必須強(qiáng)制求值[version ]——裸寫[version]會(huì)被當(dāng)作字面鍵名version。4.5size字節(jié)數(shù)檢查檢查期望字節(jié)數(shù)。下面的數(shù)字只是語法示例請(qǐng)使用真實(shí)制品大小。size 檢查不能替代校驗(yàn)和[tools.http:my-tool] version 1.0.0 url https://example.com/releases/my-tool-v1.0.0.tar.gz size 12345678平臺(tái)專屬 size 示例[tools.http:my-tool] version 1.0.0 [tools.http:my-tool.platforms] macos-x64 { url https://example.com/releases/my-tool-v1.0.0-macos-x64.tar.gz, size 12345678, } macos-arm64 { url https://example.com/releases/my-tool-v1.0.0-macos-arm64.tar.gz, size 9876543, } linux-x64 { url https://example.com/releases/my-tool-v1.0.0-linux-x64.tar.gz, size 11111111, }在源碼中size 校驗(yàn)位于verify_checksum鎖文件記錄了期望 size 時(shí)逐字節(jié)比對(duì)不一致會(huì)報(bào)Size mismatch錯(cuò)誤src/backend/http.rs#L915-L923。五、歸檔與二進(jìn)制處理strip_components、bin、rename_exe、format5.1strip_components解壓歸檔時(shí)剝離的目錄層級(jí)數(shù)[tools.http:my-tool] version 1.0.0 url https://example.com/releases/my-tool-v1.0.0.tar.gz strip_components 1注意當(dāng)strip_components與bin_path都未設(shè)置時(shí)若解壓后的歸檔在根層恰好只有一個(gè)目錄且沒有文件mise 會(huì)自動(dòng)應(yīng)用strip_components 1。這在 ripgrep 這類把二進(jìn)制打包在版本目錄中的工具上很常見如ripgrep-14.1.0-x86_64-unknown-linux-musl/rg。自動(dòng)檢測(cè)確保二進(jìn)制被直接放到 mise 期望的安裝路徑下。該自動(dòng)檢測(cè)邏輯在effective_strip_components中實(shí)現(xiàn)僅當(dāng)未顯式配置、非壓縮二進(jìn)制、非 raw 文件、未設(shè)置bin_path且should_strip_components判定為單目錄歸檔時(shí)才生效src/backend/http.rs#L390-L416。5.2bin重命名單個(gè)下載文件下載的單個(gè)二進(jìn)制文件名帶平臺(tái)后綴時(shí)可用bin重命名[tools.http:docker-compose] version 2.29.1 url https://github.com/docker/compose/releases/download/v{{ version }}/docker-compose-linux-x86_64 bin docker-compose # 從 docker-compose-linux-x86_64 重命名為 docker-compose提示下載單個(gè)二進(jìn)制非歸檔時(shí)mise 會(huì)自動(dòng)去掉文件名中的 OS/arch 后綴。例如docker-compose-linux-x86_64會(huì)自動(dòng)變成docker-compose。只有需要特定自定義名稱時(shí)才用bin。5.3rename_exe重命名歸檔內(nèi)的可執(zhí)行文件歸檔內(nèi)的可執(zhí)行文件帶平臺(tái)名、或安裝 kubectl 插件需要特定命名時(shí)使用。mise 會(huì)在解壓目錄或設(shè)置了bin_path時(shí)的該目錄中查找第一個(gè)可執(zhí)行文件并重命名為指定名稱[tools.http:openunison-cli] version 1.0.0 url https://nexus.tremolo.io/repository/openunison-cli/openunison-cli-v{{version}}-linux.zip rename_exe kubectl-openunison-cli # 重命名解壓出的二進(jìn)制以用作 kubectl 插件一次重命名多個(gè)二進(jìn)制時(shí)使用表形式——每個(gè)鍵是源名精確文件名或 glob值是新名稱[tools.http:mytool] version 1.0.0 url https://example.com/mytool-v{{version}}-linux.zip rename_exe { mytool-* mytool, myhelper-* myhelper }建議bin用于重命名單個(gè)二進(jìn)制下載rename_exe用于重命名歸檔內(nèi)的可執(zhí)行文件。源碼實(shí)現(xiàn)上rename_exe的標(biāo)量形式與表形式都會(huì)參與緩存鍵生成表形式被哈希為安全 token避免路徑分隔符、Windows 非法字符等進(jìn)入緩存目錄名并且bin/rename_exe都做了路徑穿越防護(hù)——bin../evil、rename_exea/b會(huì)被拒絕src/backend/http.rs#L1755-L1790。5.4format顯式指定歸檔格式當(dāng) URL 沒有文件擴(kuò)展名或擴(kuò)展名不正確時(shí)顯式聲明格式[tools.http:my-tool] version 1.0.0 url https://example.com/releases/my-tool-v1.0.0 format tar.xz # 顯式指定格式說明未指定format時(shí)mise 會(huì)從HTTP 重定向后的最終 URL自動(dòng)檢測(cè)格式再回退到配置的 URL。這使得無擴(kuò)展名的下載端點(diǎn)可以重定向到.tar.gz等歸檔。顯式format優(yōu)先級(jí)最高當(dāng)兩個(gè) URL 都沒有可用擴(kuò)展名、或需要覆蓋檢測(cè)結(jié)果時(shí)使用它。平臺(tái)專屬格式[tools.http:my-tool] version 1.0.0 [tools.http:my-tool.platforms] macos-x64 { url https://example.com/releases/my-tool-v1.0.0-macos-x64, format tar.xz, } linux-x64 { url https://example.com/releases/my-tool-v1.0.0-linux-x64, format tar.gz, } windows-x64 { url https://example.com/releases/my-tool-v1.0.0-windows-x64, format zip, }從源碼看格式檢測(cè)還會(huì)影響緩存身份顯式format或重定向后格式都會(huì)以format_fmt形式進(jìn)入緩存鍵避免內(nèi)容相同但處理方式不同的制品共享緩存條目src/backend/http.rs#L83-L127、src/backend/http.rs#L1678-L1703。5.5 單文件、壓縮二進(jìn)制與歸檔的分類處理extract_artifact根據(jù)檢測(cè)結(jié)果走三條路徑src/backend/http.rs#L610-L628壓縮二進(jìn)制.gz、.xz、.bz2、.zst解壓為單個(gè)文件并chmod xextract_compressed_binaryraw 文件未壓縮直接復(fù)制為可執(zhí)行文件Windows 上若設(shè)置了windows_script_interpreter還會(huì)生成.cmd啟動(dòng)器extract_raw_file歸檔tar/zip 等按strip_components解壓隨后處理rename_exeextract_archive。六、二進(jìn)制查找bin_path與查找順序bin_path指定解壓歸檔內(nèi)包含二進(jìn)制的目錄或下載文件應(yīng)放置的位置支持{{version}}模板。其路徑相對(duì)解壓后的安裝根目錄設(shè)置bin_path會(huì)禁用自動(dòng)根目錄剝離。對(duì)于形如my-tool-1.0.0/bin/my-tool的歸檔要么顯式剝離外層目錄配合strip_components 1要么保留結(jié)構(gòu)并用bin_path my-tool-{{ version }}/bin[tools.http:my-tool] version 1.0.0 url https://example.com/releases/my-tool-v1.0.0.tar.gz strip_components 1 bin_path bin二進(jìn)制路徑查找順序?qū)?yīng)list_bin_paths實(shí)現(xiàn)src/backend/http.rs#L1321-L1372設(shè)置了bin_path直接使用該目錄未設(shè)置在安裝路徑下查找bin/目錄無bin/目錄搜索子目錄中的bin/目錄找不到任何bin/目錄使用解壓目錄根。七、版本發(fā)現(xiàn)mise ls-remote的三種提取方式固定 URL 無法自動(dòng)發(fā)現(xiàn)版本。配置version_list_url后mise ls-remote即可列出版本版本解析如version latest也會(huì)基于該列表工作。源碼中fetch_versions負(fù)責(zé)抓取并交給parse_version_list解析src/backend/http.rs#L936-L950、src/backend/version_list.rs#L46-L127。7.1version_list_url數(shù)據(jù)源[tools.http:my-tool] version 1.0.0 url https://example.com/releases/my-tool-v{{version}}.tar.gz version_list_url https://example.com/releases/versions.txt版本列表 URL 可返回以下任意格式自動(dòng)識(shí)別無需額外配置純文本單個(gè)版本號(hào)如2.0.53按行分隔每行一個(gè)版本JSON 字符串?dāng)?shù)組[1.0.0, 1.1.0, 2.0.0]JSON 對(duì)象數(shù)組[{version: 1.0.0}, {tag_name: v2.0.0}]含 versions 數(shù)組的 JSON 對(duì)象{versions: [1.0.0, 2.0.0]}v前綴會(huì)被自動(dòng)剝離。mise 保留版本源返回的順序默認(rèn)將最后一個(gè)匹配條目視為最新。若源返回的語義版本順序不同可設(shè)version_order semver讓mise ls-remote按語義優(yōu)先級(jí)排序與選擇。完整的排序契約見 docs/dev-tools/index.md 的 Version ordering 一節(jié)。例如 GitHub releases API 返回最新在前把它當(dāng)作 HTTP 版本源時(shí)建議開啟語義排序[tools.http:my-tool] version latest version_order semver url https://example.com/my-tool-{{ version }}.tar.gz version_list_url https://api.github.com/repos/owner/my-tool/releases version_json_path .[].tag_name7.2version_regex從任意文本提取用正則從響應(yīng)中提取版本第一個(gè)捕獲組作為版本沒有捕獲組時(shí)使用整個(gè)匹配[tools.http:my-tool] version 1.0.0 url https://example.com/releases/my-tool-v{{version}}.tar.gz version_list_url https://example.com/releases/ version_regex my-tool-v(\d\.\d\.\d)\.tar\.gz提供正則時(shí)mise 會(huì)繞過get_text的 HTML 拒絕檢查直接獲取原始內(nèi)容因?yàn)檎齽t常被用于解析 HTML 目錄列表見 src/backend/version_list.rs#L30-L38。7.3version_json_pathjq 風(fēng)格 JSON 路徑用 jq 風(fēng)格的路徑表達(dá)式從 JSON 響應(yīng)提取版本[tools.http:my-tool] version 1.0.0 url https://example.com/releases/my-tool-v{{version}}.tar.gz version_list_url https://api.example.com/releases version_json_path .[].tag_name支持的路徑表達(dá)式.— 根值.[]— 遍歷數(shù)組元素.[].field— 提取每個(gè)數(shù)組元素的字段.field— 提取對(duì)象字段.field[]— 遍歷字段中的數(shù)組.field.subfield— 嵌套字段訪問.data.versions[]— 復(fù)雜嵌套路徑.[?fieldvalue]— 過濾字段等于指定值的數(shù)組元素常用示例# GitHub releases API 格式 version_json_path .[].tag_name# 嵌套 versions 數(shù)組 version_json_path .data.versions[]# Release info 對(duì)象 version_json_path .releases[].info.version# 只過濾穩(wěn)定版例如 Flutter version_json_path .releases[?channelstable].version[?fieldvalue]過濾語法在提取前過濾 JSON 數(shù)組非常適合只取多發(fā)布通道stable/beta/dev中的某一個(gè)。倉庫測(cè)試覆蓋了 Flutter 風(fēng)格 JSON 的通道過濾src/backend/version_list.rs#L342-L359。7.4version_exprexpr-lang 終極武器用 expr-lang 表達(dá)式提取版本是復(fù)雜場(chǎng)景下最靈活的方式。表達(dá)式接收響應(yīng)體為body變量應(yīng)返回版本字符串?dāng)?shù)組。它還接收versions變量——即version_regex或version_json_path已提取的值無前置提取時(shí)為空數(shù)組[tools.http:my-tool] version latest url https://example.com/releases/my-tool-v{{ version }}.tar.gz version_list_url https://example.com/versions.txt version_expr split(body, \n)更多表達(dá)式示例# 按行切分并過濾空行 version_expr filter(split(body, \n), # ! )# 解析 JSON 并提取對(duì)象鍵適用于 HashiCorp 風(fēng)格 JSON # 例如 {versions: {1.0.0: {}, 2.0.0: {}}} version_expr keys(fromJSON(body).versions)# 用 mise 的版本感知比較器排序 version_expr fromJSON(body) | map({ trimPrefix(#.tag_name, v) }) | sortVersions()expr-lang 內(nèi)置函數(shù)包括fromJSON(string)解析 JSON 字符串為值toJSON(value)把值轉(zhuǎn)為 JSON 字符串keys(map)取對(duì)象/map 的鍵數(shù)組values(map)取對(duì)象/map 的值數(shù)組len(value)取字符串/數(shù)組/map 的長度filter(array, predicate)與map(array, predicate)過濾或變換數(shù)組sort(array)與reverse(array)按字典序重排int(value)、float(value)、string(value)類型轉(zhuǎn)換mise 額外提供sortVersions(array)做版本感知排序基于versions::Versioning實(shí)現(xiàn)見 src/backend/version_list.rs#L146-L165。發(fā)現(xiàn)版本符合語義版本時(shí)優(yōu)先用version_order semver只有表達(dá)式自身需要排序中間值時(shí)用sortVersions()。version_expr是最后一步提取其結(jié)果即為版本列表。用versions變量對(duì)version_regex或version_json_path的結(jié)果做后處理。version_list_url、version_regex、version_json_path、version_expr這四個(gè)選項(xiàng)在源碼中被標(biāo)記為遠(yuǎn)程版本列表工具選項(xiàng)remote_version_listing_tool_option_keyssrc/backend/http.rs#L1103-L1110即只有它們參與mise ls-remote的數(shù)據(jù)獲取。八、緩存行為http-tarballs內(nèi)容緩存HTTP backend 會(huì)緩存下載與解壓結(jié)果節(jié)省磁盤并加速安裝。8.1 緩存位置普通用戶安裝時(shí)下載并解壓的文件緩存在$MISE_DATA_DIR/http-tarballs/而不是為每個(gè)工具安裝單獨(dú)存放。默認(rèn)路徑Linux~/.local/share/mise/http-tarballs/macOS~/.local/share/mise/http-tarballs/顯式的mise install --system、mise install --shared與mise install-into安裝會(huì)直接解壓到目標(biāo)目錄不使用持久解壓緩存——因此結(jié)果是自包含的不鏈接到安裝者用戶的主目錄。8.2 緩存鍵生成緩存鍵由文件內(nèi)容派生因此相同下載可在多個(gè)工具間共享文件內(nèi)容mise 計(jì)算下載文件的 Blake3 哈希獨(dú)立于期望的驗(yàn)證校驗(yàn)和解壓選項(xiàng)會(huì)改變解壓結(jié)果的選項(xiàng)也計(jì)入鍵包括根目錄剝離、重命名、相關(guān)格式或啟動(dòng)器選擇。源碼中cache_key按此拼接各部分src/backend/http.rs#L319-L371blake3內(nèi)容哈希[_format_格式][_name_重命名哈希][_strip_N][_rename_token][_binpath_路徑][_windows_script_interpreter_哈希]。注意bin_path本身不進(jìn)入鍵在符號(hào)鏈接階段處理以實(shí)現(xiàn)去重但配合rename_exe時(shí)會(huì)進(jìn)入鍵。示例緩存目錄結(jié)構(gòu)~/.local/share/mise/http-tarballs/ ├── 71f774faa03daf1a58cc3339f8c73e6557348c8e0a2f3fb8148cc26e26bad83f/ │ ├── bin/my-tool │ └── metadata.json └── 1c2af379bdf1fed266bc44b49271e2df5b0dafae09f1cc744b3505ec50c84719_strip_1/ ├── my-tool └── metadata.json上面的首個(gè)哈希在 e2e 測(cè)試中真實(shí)出現(xiàn)過——同一個(gè) tarball 在 e2e/backend/test_http 中生成blake3:71f774...鎖條目證明緩存鍵獨(dú)立于驗(yàn)證校驗(yàn)和的設(shè)計(jì)。8.3 符號(hào)鏈接安裝普通用戶安裝是到緩存解壓內(nèi)容的符號(hào)鏈接~/.local/share/mise/installs/http-my-tool/1.0.0 → ~/.local/share/mise/http-tarballs/71f774...e2e/backend/test_http_caching 驗(yàn)證了這一行為第一個(gè)工具安裝后緩存 1 個(gè)條目第二個(gè)工具使用同一 tarball 后緩存仍為 1 個(gè)條目復(fù)用不同 tarball 才新增條目最后直接斷言安裝目錄是符號(hào)鏈接且指向/http-tarballs/。該方案的好處節(jié)省空間普通用戶安裝可在工具間共享相同 tarball安裝更快復(fù)用已解壓內(nèi)容避免重復(fù)解壓下載可能仍需進(jìn)行以識(shí)別內(nèi)容一致性相同文件與解壓選項(xiàng)復(fù)用同一緩存內(nèi)容。系統(tǒng)、共享與 install-into 目標(biāo)存放真實(shí)文件而非符號(hào)鏈接避免卸載后殘留隱藏緩存條目并保證共享安裝獨(dú)立于特定用戶的數(shù)據(jù)目錄。8.4 緩存元數(shù)據(jù)每個(gè)緩存條目包含metadata.json{ url: https://example.com/releases/my-tool-v1.0.0.tar.gz, checksum: sha256:REPLACE_WITH_THE_64_HEX_DIGIT_DIGEST, size: 1024000, extracted_at: 1703001234, platform: macos-arm64 }源碼中CacheMetadata結(jié)構(gòu)體與之對(duì)應(yīng)write_metadata在解壓成功后寫入src/backend/http.rs#L40-L47、src/backend/http.rs#L722-L741。8.5 緩存管理普通 HTTP 安裝的緩存放于$MISE_DATA_DIR/http-tarballs/有意放在MISE_CACHE_DIR之外因此mise cache clear不會(huì)刪除已安裝符號(hào)鏈接仍引用的內(nèi)容。系統(tǒng)、共享與 install-into 目標(biāo)不會(huì)創(chuàng)建持久 HTTP 解壓緩存。九、與 mise.lock 的聯(lián)動(dòng)跨平臺(tái)鎖文件HTTP backend 是 lockfile 生態(tài)的重要成員。mise lock時(shí)resolve_lock_info會(huì)為每個(gè)目標(biāo)平臺(tái)解析制品 URL 與校驗(yàn)和src/backend/http.rs#L1145-L1183URL 模板按目標(biāo)平臺(tái)渲染lock_url_for_target無法解析的平臺(tái)會(huì)報(bào)錯(cuò)并標(biāo)記為跳過而非靜默寫空條目校驗(yàn)和按 平臺(tái)直接聲明 →checksum_expr清單 → SHASUMS 文件名匹配 → 單個(gè)校驗(yàn)和文件 的順序解析全程不下載制品配置了checksum_url卻解析不到校驗(yàn)和時(shí)會(huì)給出警告并僅鎖定 URL不帶校驗(yàn)和驗(yàn)證。安裝時(shí)若 lockfile 已啟用mise 會(huì)對(duì)每個(gè)平臺(tái)記錄blake3校驗(yàn)和與 size并在后續(xù)安裝中驗(yàn)證src/backend/http.rs#L889-L929。這正是 e2e/backend/test_http 中斷言checksum blake3:71f774...所驗(yàn)證的鏈路。完整的 lockfile 說明見 docs/dev-tools/mise-lock.md。十、端到端驗(yàn)證與真實(shí)注冊(cè)表案例倉庫中 e2e/backend/test_http 覆蓋了 HTTP backend 的完整實(shí)操矩陣可作為自測(cè)清單基礎(chǔ)安裝 mise x --運(yùn)行驗(yàn)證帶checksum的校驗(yàn)安裝多版本1.0.0 → 2.0.0切換平臺(tái)專屬 URLplatforms表darwin-arm64/darwin-amd64/linux-amd64raw 文件直裝無歸檔與 raw 文件 bin_pathlockfile 生成MISE_LOCKFILE1下mise.lock含 backend/url/platforms/checksumURL 模板{{version}}、模板化bin_path、Tera 帶空格語法{{ version }}。真實(shí)世界案例registry/sentinel.toml 展示了生產(chǎn)級(jí)配置——HashiCorp Sentinel 的完整 HTTP 后端聲明version_order semver bins [sentinel] [[backends]] full http:sentinel [backends.options] checksum_url https://releases.hashicorp.com/sentinel/{{ version }}/sentinel_{{ version }}_SHA256SUMS url https://releases.hashicorp.com/sentinel/{{ version }}/sentinel_{{ version }}_{{ os(macosdarwin) }}_{{ arch(x64amd64) }}.zip version_expr fromJSON(body).versions | keys() | sortVersions() version_list_url https://releases.hashicorp.com/sentinel/index.json它同時(shí)用到了模板重映射、SHASUMS 校驗(yàn)和源、version_expr版本提取與version_order semver——是本文所有概念的濃縮范本。結(jié)語HTTP backend 是 mise 工具生態(tài)的萬能插座一條直鏈、一段模板、一組校驗(yàn)選項(xiàng)即可把任何二進(jìn)制、腳本或歸檔納入統(tǒng)一的管理、版本選擇、緩存與鎖文件體系。從mise use一行命令接入到platforms表按平臺(tái)分發(fā)、checksum_url/checksum_expr無下載鎖定全平臺(tái)校驗(yàn)和再到version_expr處理任意復(fù)雜的版本清單其能力邊界遠(yuǎn)不止下載解壓——它把從 URL 安裝這件事完整地工程化了。結(jié)合 docs/dev-tools/backends/http.md、src/backend/http.rs 與 e2e/backend/test_http你可以為團(tuán)隊(duì)里任何只有下載鏈接的工具建立可復(fù)現(xiàn)、可審計(jì)的標(biāo)準(zhǔn)安裝方案。【免費(fèi)下載鏈接】misedev tools, env vars, task runner項(xiàng)目地址: https://gitcode.com/GitHub_Trending/mi/mise創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
丁香六月激情| 综合久久五月| 人人干Av| 五月婷婷国产| www.五月婷婷| 蜜臀A∨在线水帘洞| 99热免费| 国产精品色婷婷AV综合色色| se色综合网| 欧美丁香五月夫妻天| 九热电影av| 丁香五月先锋| 热九九在线| 色99视频| 色五月婷婷五月天激情综合| 婷婷丁香五月综合| 人人爽网| 99色视频| 亚洲婷婷五月草久| 狠狠ri| 亚洲无码影片| 十月色综合| 日韩三及成人AV片| 91操片| 日韩成人综合网| 婷婷综合激情| 99九九视屏| 熟女人妻视频| 五月婷婷成人| 日本特黄aaaaa| 精品婷婷丁香五| 色色色五月婷| 色性日本| 天天草人人摸| 激情五月婷婷啪啪| 亚洲精品无AMM毛片| 第四色首页| 九九精品丁香花| 性爱久久| 丁香六月毛片| 97日在线视频| caop视频| 五月婷色色| 五月丁香婷婷久久| 欧美超碰亚洲| 免费无码毛片一区二区A片 | 色色色九九九五月婷婷| 99精品久久久久| 日本丁香五月婷婷| 久久五月丁香| 99色日本| 欧美A片在线视频免费观看| 九九色色| 婷婷色五月综合| 日日操夜夜撸| 五月丁香六月欧美综合网站| 婷婷基地五月色| 五月天婷婷情色| 久久久人妻| 久久99网| 激情五月婷婷老师| 精品无码色欲AV| 久久玖玖综合| 韩日AV片| www免费在线视频| 九九九九综合| 欧美丁香五月夫妻天| 激情五月天在线| 大伊香蕉玖玖爱| 人妻丰满精品一区二区A片| 五月天成人在线视频网站| WWW丁香五月| 99热99| 成人无码精品1区2区3区免费看| 国产精品国产| 丰满人妻一区二区三区| rr天天操| 深爱激情综合网| 狠狠色狠狠鲁| 五月丁香六月日逼| 色视频2025| 色色五月综合| 色婷婷丁香社综合| 肏日网在线看| www.久久99精品| 国产69久久久欧美黑人A片| 亚洲无码播放| 九九性视频| 91精产一区三区免费观看| 亚洲三级无码| 国产内射婷婷| 玖玖99婷婷| 国自产拍偷拍精品啪啪一区二区| 五月丁香网站| 天天做天天爱| 99在线精品免费视频| 涩五月婷婷| 色5月丁香婷婷| 九九久久视频| 久色资源网| 插插五月天| 99成人精品六| 99在线视频在线观看| 六月丁香婷婷综合色播| 婷婷丁香色五月天久久88| 大香蕉啪啪啪| 玖玖在线资源视频| 五月天色综合服务平台| 色六月天| 五月婷婷综合在线观看| 日日噜噜夜夜狠狠久久丁香六月| 日日射天天射| 伊人婷婷色激情丁香| 五月www| 无码se| 操逼视频一区| 国产亚洲色婷婷久久99精品91| 99ri视频在线播放| 丁香五月综合激情性爱 | 99在线视频在线观看| 26uuu淫色| 九九99精品| 91婷婷搞| 精品人妻久久久久久| 色播五月综合网| 天天搞天天爽| 91男同| 99ri在线视频| 成人日韩欧美| 久久R激情| 狠狠色成人影片| 97操碰| 国产av天堂| 久久婷婷亚洲| 天堂久久丁香| 玖玖综合玖玖| 色欲丁香| 69五月天视频| 17.c黄色| 亚洲不卡欧洲| 狠狠色综合网| 丁香五月婷婷av影院| 欧美A片在线视频免费观看| 玖玖爱伊人网| 狠狠色大香蕉| 五月天国产成人| 思思热思在线精品视频| 自拍盗摄 另类| 五月天久久91| 久操婷婷| 精品亚洲国产成AV人片传媒| 日韩无码91| 久热91精品| 欧美综合123区| 五月伊人网| 九九精品网站| 丁香婷婷在线| 丁香五月91| 99婷婷| 狠狠操狠狠插| 丁香五月成人自拍| 色婷婷影视| 激情开心五月婷婷| 91大神操美女| 热久久66| 欧美日韩成人在线观看| 成人国产欧美大片一区| 97狠狠碰| 五月花综合网| 五月激情综| 91视频精品99| 热91久| 99综合成人视频在线观看| 九九十99视频| 五月丁香婷婷综合激情基地| 婷婷五月综合久久中文字幕| 熟妇人妻中文字幕无码老熟妇 | 亚洲成人影视在线| 婷婷射综合| 久久精品爱爱| 国产精品色一哟哟| 99色综合| 日本人妻操| 综合色99| 丁香婷婷深情五月亚洲| 激情五月丁香五月| 99超碰人人| se99高清无码| 五月丁香成人小说| 婷婷五月天桃花网| 九九热欧美| 我要射综合| 99在线精品视频| 九九成人视频| 99色干| AAA亚洲AV| 五月婷婷亚洲| 啪啪操网| 色五月婷婷成人视频| 97碰成超视频免费视频| 思思99热在线| 五月婷婷AV| 亚洲乱码日产精品BD在线观看| 99热一本久道| 五月婷婷综合色啪首页| 亚洲日日日| 大香蕉网 久久| 丁香六月婷婷一区| 超碰在线9| 国产乱妇乱子在线播视频播放网站| 五月天AV大香蕉| 日本无va视频| 天天色色天天| www.久久久.com| 夜夜骑天天玩天天日| 天天狠天天叉| 欧美人久久| www.俺去也com| 性爱综合网| 亚洲区1| 激情婷婷人妻| 天天爽天天| 成人短视频在线免费观看| 黄色99网| 五月丁香影视| 六月婷婷之青青草| 999热在线视频| 99在线综合视频| 午夜九九电影| 免费精品99| 中文字幕在线不卡| 国产色网站| 日韩AC在线免费观看| 桃色Av色哟哟| 日日操日日撸| 色五月激情综合网| 热中文字幕| 婷婷丁香18| 激情5月婷婷| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 能看的av| 亚洲婷婷月丁香五月| 九九九色综合| 婷婷五月综合久久中文字幕| 九九亚洲| 婷婷久久五月丁香| 伊人干综合| 91丁香婷婷综合资源| 99热这里只有精品搜| 三男玩一女三A片| 超碰国产在线| 五月丁香亚洲综合| 九九视频免费| 大香蕉人妻| 久久婷网| 可以看的AV| 国产综合视频婷婷| 99爱爱| 97黑人精品区| 精品人人操| 97久人人| 97人人干| 五月天色婷婷激情综合| 色婷婷成人| 99热免费精品热久久66| 99热这里都是精品| 亭亭五月激情亚洲在线| 九九99九九精品视频| 色婷婷在线视频综合| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 婷婷欧美激情综合| 麻豆AV一区二区三区| 婷婷六月激情小说网| 日日夜夜天天综合| 怡红院院在线导航网 | 婷婷精品在线| 五月丁香在线视频观看| 久久精品一区二区三区四区| 97韩国久久电影院| caopeng97人人| 四月丁香五月婷婷久久| 久久精品综合色| 人妻久热| 综合久久婷婷五月丁香| 欧美色男人网站| 成人九九视频| 久久久久久久久久91| 橾逼网| av免费在线网站| 婷婷五月精品中文字幕| 色六月婷婷| www.久久| 国产精品蜜臀99| 五月综合激情网| 丁香色播五月天| 日B日潘金莲BB| 亚洲综合五月天婷婷| 色婷婷久久综| 天天爽天天干| WWW.桔色成人.COM入口| ztEJj| 五月婷婷综合视频| 日日日,com| 野战J办公桌椅H| 五月草影视| 亚洲美女高潮久久久久久69| 亚洲色婷婷激情| 激情婷婷狠狠干综合| 日日舔夜夜操| 色停停香蕉视频| 天天综合精品| 日本va欧美va精品发布视频| 丁香久久九九99| 色婷婷导航| 亚洲久久视频| 婷婷久久影院| 免费视频WWW在线观看网站| 天天天天色天天天天天干| 人妻激情视频| 日本乱子人伦在线视频| 激情婷婷久久| 色五月激情基地| 91N 一起草| 91中文在线| 思思99re这里只有| 粉嫩av蜜桃av蜜臀av| 国产真实乱了老女人视频| 色色哒五月婷婷六月丁香| 国产精品操| 青柠影视免费高清电视剧| 天天舔天天操| 婷婷 激情 五月| 99re8热精品免费视频| 久久人妻精品| 久热这里只有精品99re,久热这里只有精品7 | 99热这里只有精品 搜| 六月婷婷啪啪| 97一区二区| 九热精品| 99爱在线观看视频| 丁香五月婷婷六月婷| 成人网站高清无码| 久操欧美在线观看97| 性生活视频98791| 五月天成人网婷婷| 99久久精彩视频| 亚洲亚洲人成综合网络| 91婷婷在线| 色婷婷影音| 综合色99| 婷婷五月天综合AV| 精品综合网在线| 欧美日综合| 欧美日韩aaaa| 激情五月综合ì香亚洲| 激情综合五月| 五月天色色婷婷| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 全部老头和老太XXXXX| 亚洲性视频| 人妻 性久久久久久| 五月天综合在线| CAOBIBI| 天天碰夜夜操| 婷色五月天| 久久92| 五月天成人小说网| 五月丁香花免费视频| 婷婷五月色播网| 99伊人婷婷在线| 超碰成人公开| 国产成人精品一区二三区熟女在线| 五月丁香色色| 色婷婷超碰| 婷婷五月天精品| 婷色成人| 欧美日韩大黄| 九九家庭影院| 久久这里只有国产| 色色无码日韩| 开心婷婷中文字慕| 超碰在线99| 国产精品视频免费看| 狠爱婷色| 婷婷综合日本| 激情久久 婷婷| 强辱丰满人妻HD中文字幕| 精品九九网| 97超碰,人人舔,人人操,人人摸 | 婷婷激情五月综合丁香社| 婷婷六月丁香开心深深爱| 9人人操人人看| 九色PORNY在线精品酒店| 丁香婷婷AV| www.色五月| 六月激情网| 97碰在线视频| 性做久久久久久久免费看| 99热在线观看免费精品| 五月天婷婷在线AN| 久久这里只精品| 色综合久久久久| 色婷婷婷婷| 狼人狠狠操| 九九热婷婷| 日本天堂免费99| 十一月婷婷激情四射| 色综合色色| 97 A I色色| 五月丁香婷婷婷婷综合网| 色婷婷丁香五月在线| 亚洲 激情 中文| 日本在线视频手机播放五月婷| 538在线| 思思99热在线| 色五月婷婷丁香婷婷| 天天撸夜夜爽| 五月天啪啪啪| 久草视频一,二三四| yellow视频在线观看91| 久久综合九九| 夜夜操狠狠操| 丁香五月瑟瑟| 国产综合婷婷| 丁香五月亚洲AV| a色色色色色| 成片免费播放| 五月花成人网| 天天日日综合| 九九99九九99九九99视频网| 99综合视频| www.色婷婷| 91碰碰| 成人超碰网| AV网在线观看| 六月99天天婷婷激情综合| 五月丁香| 人人干AV| 激情爱爱网站| 免费无码毛片一区二区A片 | www久| 亚洲网综合在线| 国产伦亲子伦亲子视频观看| 丁香狠狠操| 色综合天堂| 丁香六月AV| 开心五月色婷| 五月婷婷在线观看黄| 色婷婷久久| 亚洲爆乳无码精品AAA片蜜桃| 伊人热在线大香蕉| 久热91精品| 丁香五月在线伊人| 天天摸色吧天天摸色吧| 淫视馆aV二区一区| 91九色PORNY肉丝在线| 激情五月婷婷啪啪| 另类五月婷婷| 九九热在线视频观看| 99ri国产| 91久久国产自产拍夜夜91久久精品文字>91麻豆精品国产 | 天天拍天天操| 婷婷丁香视频| 99热久只有精品首页| 爱的综合网| 久久婷婷五月综合色丁香| 99视频精品在线| 五月婷婷综合成人| 五月天激情黄色小说在线观看| 色情播放| 欧美婷婷| 操操熟女| 色999五月色| www.99久| 伊人丁香五月婷婷潮吹| 99久久黄色顶级视频| 日本高清综合网五月丁香| 丁香五月最新地址| 大香蕉久久综合网| 五月婷婷激情刺激| 五月天com| 99热在线播放| 久久99久久99精品免观看粉嫩| 美女主播野战视步页| 欧美五月婷婷| 91色色色视频| 91久久久久久| 欧美久久网| 嫩草AV久久伊人妇女超级A| 久久久久久久久久久月丁| 五月婷婷色男女| 97色天堂| 久热99久热| 成人五月天在线视频在线观看| 久久久久婷| 综合久久99| 婷婷五月天激情电影| 久色五月婷婷综合| 91丨九色丨43老版熟女| 99玖玖免费视频| 天天舔天天摸视频| 欧美性生交XXXXX无码小说| 九热久| 天天日日爽| 久操热| 香蕉乱插| 激情五月,婷婷五月,丁香五月| 欧美在线视频99| 激情综合九月| 热久久这里只有精品| 婷婷五月天99综合网站| 翔田千里aV中文字幕| 久久九九视频| 99久久婷婷国产综合精品电影| 欧美五月丁香在线| 久草天堂| 久久久久人妻精品| 国产9色在线/日韩| www久久艹| 99精品国产乱码久久久人妻| 五月天快乐开心激情网| 99热激情| se99高清无码| 色99在线视频| 久久久久久欧美精品se一二三四| 欧美婷婷日本| 久热 91| 丁香婷五月天开心六月| 色综合偷拍| 99热a片免| 国产精产国品一二三在观看| 丁香婷婷人妻综合网| 激情深爱五月天| 久久人操| 99久久激情视频| 天堂资源欧日浪女在线播放| 婷婷午夜精品久久久| 国产午夜精品一区二区| 99九九视频| 久久婷婷人人| 久久人操| 亚洲免费电影2| 99精品福利视频| 丁香五月婷婷激情97| 五月色丁香婷婷中文字幕| 噼里啪啦完整版中文在线观看| 久久久久婷婷五月热综合| 五月丁香激情综合| 人人爱天天摸摸天天爱| 性无码专区无码| 婷婷丁香五月视频| 97很鲁在线视频| | 一本色道久久综合狠狠躁一二三 | 9这里只有精品| 婷婷99视频在线| 噜噜噜精品欧美成人在线观看| 99热午夜精品| 五月丁香婷婷六月| 亚洲综合在线播放| 人妻无码精品一区| 天天色一道本综合婷婷| 99热99艹在线观看| 99热这里只要精品免费| 日本婷婷色| 5月丁香六月情| 国内自拍97在线| 五月婷婷激清网| 亭亭丁香97| 91激情五月开心| 大香蕉五月天婷婷丁香91| 97精品自拍| 五月丁香六月婷婷啪啪综合| 成人av在线网| 亚州色色色| 99乱视频| 欧美成人精品A片免费一区99| 影音先锋色色色资源色资源色| 天天日日夜夜| 热99精品视频| 日本欧美国产| 大香蕉手机视频| 天天综合亚洲综合| 99热精品10| 99热.com| 天天碰天天插天天操| 狠狠爱深色婷婷综合| 日韩色五月| 另类综合激情| 在线理论片| 婷婷射婷婷舔| 天天操无码| 色五月情| 丁香五月先锋| 天天爱天天做天天日| 丁香香蕉射射射| 色 五月婷婷基地| 91久久色| 国产亚洲成AV人片在线观黄桃| 五月婷婷丁香在线| 9+1视频网址| ..真实国产乱子伦毛片| 日婷婷久久开心| 婷婷大香蕉| 久久受www免费人成| 激情五月天啪啪| jiujiu无码五区| 婷婷丁香www视频日本韩国| www.婷婷五月| 激情丁香五月天图片| 丁香婷婷六月激情文学 | 亚洲欧洲中文日韩久久AV乱码| 99热精品中文字幕| 袁子仪视频观看| 欧美人人超级碰| 久久九色| 伊人玖玖精品| 五月天电影网| 丁香五月激情宗合网| 激情丁香五月婷婷| 天天干天天干天天干| 精品无码人妻一区| 99精品热视频| www99精品亚| 人人摸人人| 五月色婷婷综合| 欧洲亚洲免费视频9| 日韩黄色电影| 玖玖99婷婷| 天天干天天干天天干天天干天天干| 无月播播激情在线观看视频| 7777激情基地| 久久九九re热| 97人碰人操| 五月亭亭开心网| 九九精品免费| 快色t v在线入口| 狠狠艹狠狠艹| 无码色色色色色| 久久影视婷婷五月| 亚洲九九99精品视频在线播放| 夜夜爽天天干| 任你爽精品免费视频6| 亚洲丁香五月在线观看| 月婷婷亚洲| 亚洲区视频| 欧美啪啪五月天| 伊人婷婷99热精品| 中文字幕无码人妻少妇免费视频| 色五月91| 99狠狠操一| 五月天婷婷在线播放免费| 激情播丁香| 五月婷成人| 毛片新网地| 一级黄色操B| 亚洲成人AV高清字幕| 99热精品在线| 99色婷婷| 级情九色| 久久久8| 五月天婷婷成人网| 很很干天天干| 五月天婷婷乱论小说| 婷婷丁香色情| 丁香五月婷婷色播艳门照| 五月丁香爱婷婷深深| 亚洲另类婷婷综合| 欧美 日韩 成人在线| 九九精品99久久久| 婷婷五月六月丁香| 亚洲另类AV| 97碰 在线视频观看| 久久综合婷婷激情| 色色欧美。| 日韩精品无码一区二区| 亚洲成av人影院| 亚洲综合在线视频| 色色色综合网| 精品乱码久久久久| 色五月婷婷五月天| 国产成人精品一区二三区熟女在线| 99热思思| 亚洲精品无码一区二区| 99久久国产宗和精品1上映| 99久久久久| 99热在线看| 五月婷婷丁香| 激情五月天婷婷| 国产精品18久久久| 日本操天堂| 色色色九九九五月婷婷| 香蕉曰比| 色青五月天| 激情五月,激情综合网| 久久狠狠干| 狠狠色丁香五月婷巨| 婷婷激情丁香五月天综合| 日本综合色图| 另类在线| 激情婷婷丁香五月| 五月丁香六月花| 五月花综合视频| 精品无吗va视频免费观看| 日日操天天操| 丁香九月激情| 国产精品人成A片一区二区| 在线观看免费人成视频无码| 亚洲传媒在线观看| 激情婷婷视频在线| 99热这里只有精品1025| 五月激情五月丁香| 色婷婷丁香五月| 深爱激情五月天色婷婷| 狠狠色噜噜| 日本爆乳片手机在线播放| 激情九月综合| 热久久91| 日本三级日本三级99| 99热在线观看| av五月天婷婷丁香| 五月婷婷深深爱| 99re6热在线精品视频播放速度| 成人电影AV在线观看| 看黄的网站18禁| 婷婷五月开心中文字幕在线| 深爱五月激情| 激情五月丁香社区| 欧美槡BBBB槡BBB少妇| 三日本无码| 亚洲综合草草| 亚洲欧洲色色| 这里只有精品免费视频| 婷婷五月无码| www.ywav| 日本69日人视频| 五月丁香激情综合网官网| 五月婷婷丁香网| 午夜婷婷| 99操网站| 亚洲成人网无码| 亚洲人妻五月丁香婷婷| 婷婷九九| 激情99| 91xxxx九色| 丁香六月狠狠| 亚洲综合在线丁香五月| 五月丁香啪综合| 少妇伦子伦精品无吗| 欧美啪啪五月天| 婷丁五月| 激情网婷婷五月天| 香蕉AV福利精品导航| 色噜噜五月丁香婷婷| 婷婷五月天改成什么了| 中文字幕久久一区二区三区| 99热这里只有精品66| 91热久88| 久久无码激情视频| 五月丁香激情综合网| 九九av| 色五月大| 日韩精品色| 激情视频网址| 97操| 五月丁香婷婷啪啪综合网| 91色噜噜狠狠狠狠色综合| 操碰色一区就去操| 大香蕉久操| 色欲色香综合网| 免费看欧美成人A片无码| 亚洲天堂啪啪| 亚洲激情综合免费| 专区无日本视频高清8| 无码人妻电影| 婷婷五月天无码| 成人做爰黄A片免费看直播室男男| 99ri在线| 开心五月天激情网| 色婷插| 一夜福利不卡| 影音先锋一区二区三区| 婷婷五月综合网激情| 激情综合网激情五月欧美| 大香蕉久操| 停停六月 综合| 婷婷成人综合五月| 99色在线视频| 丁香情色五月| 免费日韩99| 欧美99热| 亚洲99在线| 色五月激情婷婷| 黄色片avv| 丁香五月老师| 五月丁香综合| 丁香婷婷大香蕉| 亚洲综合另类| av在线不卡播放| 色宗合久久五月婷婷| 99综合视频| 色噜噜夜夜夜综合网| 99热这里只有精彩| 久久激情四射| 九九热视频免费的| 97五月婷| 另类小说婷婷色| 九九热精品| 99国产小视频2013| 天天搞天天色综合| 久七香蕉| 亚洲丁香婷婷丁香五月天激情| 色综合五月| 五月婷久久| 五月综合久久| 亚洲性爱99| 99人人干| 97干网站| 色吧五月婷婷| 午夜激情综合| 91色综合| 超碰人人操| 免费播放片大片| 色综合色色色色| 五月丁香六月婷婷的女人| 丁香五月狠狠在线观看| 色婷婷a三区麻| 日韩在线看AV| 天天天天天天天操| 五月丁香综合色婷婷| www.五月瑟| 综合另类激情| 色情综合网| 9久热在线视频精品| 色99色| 五月丁香亚洲婷婷| 五月激情综合性爱| 欧美日韩成人高清在线| 99热99精品| 激情五月激情综合网| 国产黄色一级片| 午夜婷婷久久 | 91超碰人人操| 99er日韩| 蜜桃人妻无码AV天堂三区| 日日色五月天| 日韩青青| 婷婷五月天激情免费在线观看| 丁香六月婷婷社区| 在线观看免费狠狠色丁香香综合| 色五月综合激情| 99成人| 亚洲天堂AAA| 久热99中文字幕| 色五月婷婷色五月| 91好好热日本在线| 色婷婷97| 91精品电影18T| 久久九九思思| 99热这里只有精品9| 97九色视频| 99免费| 管管補管管紱| www.cao.com久久| 99热精品在线观看| 一级片sese片.COM| 超极99精品| 五月天综合色| 色优久久| 六月丁香婷婷爱| 亚洲色夜| 九九综合视频在线观看| 日韩国产在线精品| www.夜夜操.com| 入口五月婷婷六月香| 无码成人AAAAA毛片AI换脸| 996日日爱| 99这里有精品视频| 国产乱人偷精品人妻A片| 亚洲色99| 97色婷婷| 免费色婷婷| 大香蕉婷婷色| 丁香五月深爱五月婷婷| 色婷婷五月天成人网| 五月婷婷色| 色婷婷五月天天天干天天操天天爽| 91婷婷色| 99精品视频在线观看| 超碰99资源站| 婷婷狠狠久久| 色 五月 天 婷婷 丁香 九月| 99精品免费| 99热这里只有精品国产精品| 色婷婷视频| 久久久久久99日本| 五月天婷婷av| 婷婷五月天激情在线| 丁香啪啪| 99国产欧美视频| 亚洲色五月| 玖玖热视频| 99热视| 99综合熟女| 日本一級黃色一級片| 久青操| 五月婷深深爱激情网| 久婷婷婷| 热99免费在线| 超碰狠狠色| 丁香六月色婷婷| 狠狠操狠狠色| 天天肏夜夜肏| 婷婷 丁香 精品| 精品少妇蜜臀91| 色欲丁香| 婷五月天| 爱爱网址9| www.超碰在线| 色色COm| 婷婷久久免费看| 色情五月天丁香社区| 丁香五月婷婷国产在线| 五月丁香影院| 99热6这里只有精品| 五月亭亭激情综合| 亚洲欧美婷婷五月色综合| 日本一区二区三区精品视频| 99热国产| 狠狠干综合| 久久这里只有精品热在99| 日日干干天天干| 五月丁香激情片| 人妻有码乱操| 国产AV一区二区三区最新精品 | 婷婷综合在线网| 色五月综合| 伊人婷婷大香蕉| 日狠狠| 99人人操人人摸| 婷婷五月天无码熟女| 色99在线视频| 久草丁香婷婷五月天婷| 超碰2021| 国产成人一区二区三区在线观看 | 人人爱天天摸摸天天爱| 大香蕉啪啪啪| 99re在线视频| 9 1在线视频| 中文AV网站| 六月激情网| 99久久极情精品一区| 五月天社区婷婷丁香社区| 激情五月天婷婷丁香| 69er小视频| 99视频久久免费视频| 久久婷综合| 99干日本| 亚洲顶级VA在线观看-高清完整版在线影院观看-S022AV | 久狠日av| 婷婷丁香亚洲五月天| 六月丁香基地| 婷婷五月丁香av网站| 91九色丨国产丨爆乳| 日本成人综合| 亚洲另类av| 国产做爰视频免费播放| 天天射影院| 97香蕉碰碰人妻国产欧美| 亚洲AV网址| 天天天天干| 丁香五月天综合| 夜色综合网| 亚洲欧洲美女在线观| 国产一二区爆乳_1国产日韩一区二区三-成人AV | 97人人操人人爽| 九九综合九色欧美狠狠| 性爱网五月婷婷| 激情都市另类| 超碰免费人人肏| 九九九九九九热| 激情图片亚洲| 丁香激情综合| 97超级碰| 午夜激情久久| 色婷婷成人色网| 婷婷丁香综合网| 亚洲丁香花五月丁香花| 91seAV| 99re视频在线| 国产99久| 丁香五月天亚洲综合| www狠狠爱com| www.com.色色| 伊人九九热| 99亚洲视频| 大香蕉五月婷婷| 91精品久久久久久77777| 99热精品在线播放| 久久婷婷五月草视频在线播放| 激情综合网,婷婷| 五月天激日本色情在线| 亚洲色情一区二区三区四区| 婷婷激情区| 婷婷99狠狠躁| 操97免费超级视频| 色情五月丁香| 五月丁香色色网| 亚洲精品字幕| www.色欲丁香婷婷| 色吊丝永久访问网址| 操B五月天| 99热狠狠操| 超碰人人草| 久久99最新| 91wwmm导航| 久久五月天网| 人人爱国产| 全部老头和老太XXXXX| 五月天久久婷| 狠狠ri| 日韩精品一区二区刘| 日韩人妻在线观看| 色婷婷丁香五月天在线视频| 丁香婷婷在线| 99热官网精品在线| 色色色色色色色色网站| 免费无码毛片一区二区A片 | 99热精品观看| 人人播| 激情九月婷婷九月| www.com任你艹| 色婷婷香蕉| 狠狠狠狠狠狠狠狠草| 99亚洲视频| 五月婷婷天| 粉嫩AV久久一区二区三区| 国产精品男人AV不卡| 久久WW| 亚洲性爱干干| 九九热只有精品| nvrentiantang av| 色婷婷狠狠| 抽插特写| 久久五月丁香婷婷| 日在线V视频在线播放| 日本狠狠网| 五月婷婷六月丁香| 婷婷六月天| 99久久99视频只有精品| 天天爽夜夜爽| 91人人操人人| 人人艹艹艹| 五月丁香色婷基地综合久久| 日本的α片xxxwww| www.99热这里只有精品| 热久精品| 五月婷免费视频| 深爱丁香网| 66成人网| 欧美搡BBBBB摔BBBBB| 开心五月婷婷激情| 欧美激情 日韩无码 婷婷 五月天| 婷婷五月丁香欧洲| 99免费视频精品| 粉嫩av蜜桃av蜜臀av| 淫五月停停| 色婷婷综合久久久久| 色播丁香婷婷五月激情| 九九AV在线| 97啪在线观看视频| 超碰亚洲天堂| 五月激情六月综合| 能看的av| 久色网址| 色狠狠色噜噜AV天堂五区消防| AV成人在线播放| 日日干四虎| 成人午夜无码视频| 欧美色五月天| 另类图片五月天| 9 1在线视频| 99秘 在线| 99操99| 99碰视频| 日日爽天天| 粉嫩AV久久一区二区三区| 色你久久| 久久久人人人妻丝丝丝| 天天婷婷综合亚洲亚洲| 国产44页| 久久成人天| 久久99网站| 久久综合丁香| 色五月在线观看| 九九亚洲| 婷婷中文在线| 久热A| 青青草伊人婷婷| 婷婷五月天黄色| 99久热| 日日影院 | 久99久在线| 婷婷六月天激情影院| 99热国产| 九九99九九99九九99视频网| 色婷婷色婷婷五月| 色婷婷很很丝袜| 老师的粉嫩小又紧水又多A片视频| 色婷婷四色| 婷婷五月六月丁香综合| 精品一二三区久久AAA片| 中文字幕在线免费观看视频| 六月激情网| 五月色婷丁香| 天天狠狠色综合| 久久五月丁香| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 国外亚洲成AV人片在线观看| 亚洲天堂久久| 丁香色综合| 91视频免费后入强操| 五月婷色激情五月| 俺来也狠狠| 色欲丁香| 婷婷九月激情| 丁乡久久| www,超碰| 久久五月天网| 精品久久99码| 1024在线观看免费视频| 婷婷十月丁香| 超PEN精品在线| 色色热99| 99只有精品| 广东99色在线| 国产欧美精品AAAAAA片| 99在线观看视频精品| 亚洲色五月| 大香蕉婷婷| 五月天精品视频| 九九色精品| 激情伊人五月天| 九月婷婷综合八月丁香在线观看| 五月丁香婷婷色色色| 欧美色图天堂网色| 激情五月天综合网| 丁香五月色情| 亚洲五月天,激情视频| 天天做综合| 日韩色色小视频| 五月丁香五月丁香| 人妻乱码久久久| 激情婷婷丁香色五月综合| 日日干夜夜撸夜夜骑| 久久这里只有精品视频26| 婷婷播播五月天| 成人色情五月天婷婷丁香| 色欲资源网| 武汉美女啪啪视频免费一级片| 五月激情网络| 99久久6| 婷婷色五月开心五月| 六月99天天婷婷激情综合| 久久婷色| 九九热免费视频| 岛国在线观看91| 亚洲 成人 电影av在线观看| 欧美性色A片免费免费观看的| 成人免费黄色短视频| 久久九九囯产| 97人人操在线| 日本天天综合| 六月丁香激情婷婷| 九九热这里只有精品6| 在线网黄| 北京熟妇搡BBBB搡BBBB| 97操操| 淫视馆av三区| 中文字幕AV在线| 激情五月综合六月丁香婷婷狠狠干| 色五月丁香五月婷婷五月成人网| 婷婷开心激情| 久久婷婷视频| 综合久久婷婷99| 91九色|疯狂|高潮|对白|| 26uuu美女三级视频| 国产色五月| 色综合久久88色综合天天99| 开心激情站| 国产操逼视频网站| 色婷婷久久综合| www.五月天婷婷.com| 伊人婷婷五月天| 99视频在线| 手机激情网| 99热在线观看| 性高潮久久久久久-九九九九九九九九九九热-成人AV | 大香蕉懂9| 激情99在线视频| 丁香婷婷久久五月天| 欧美激情五月天婷婷| 亚洲色网络| 亲子乱av一区二区三区的| 色婷婷激情五月天在线观看| 色情终和网| 久久性爱网站| 婷婷丁香18| 六月色国内综合| 九九色网专区| 色五月六月| 大香蕉人人网| av在线激情| 99精品久久久| 97影院一级片| 久久色情| 亚洲在线网站| 婷婷五月丁香综合| 人妻肉射免费观看| 婷婷色在线播放| 成人短视频在线观看| 狠狠狠狠狠草| 久久久婷婷婷| 大香蕉在线99热| 777色色色| 五月婷婷二月丁香| 五月婷婷丁香深深爱| seav天堂| 婷婷天堂综合| 综合色五月天| 玖玖婷婷五月| AV九九| 九热视频| 超碰99在线观看| 色 噜噜 九月 婷婷| 婷婷五月激情的图片| 婷婷激情丁五月| 在线看片av| 国内精品免费一区二区2009| 婷婷五月天av| 狠狠色成人影片| 伊人丁香花综合影院| 婷婷五月在线| 中文中文在线| 成人在线网| 久久丁香五月婷| 丁香香五月激情免费视频| wuyuedingxiang| 久久99久久99久久99人受| 伊人久久大香线蕉av最新| 激情综合网 激情五月天| 激情网站五月| 婷婷色色欧美| 国产婷伊人| 人人播| 5月婷婷激情网| 色9色| 97超碰人人操| 日韩一级淫乱片一区二区三区| 亚洲激情婷婷| 天天日天天操心| 日日肏夜夜干| 怡红院 久久| 碰久久精品w| 国产又色又爽又黄又免费| 婷婷五月六月|