99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜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
返回資訊列表
五月丁香六月婷婷中合网| 婷婷色激情五月天| 色444综合网| 色婷婷www| 婷婷成人综合免费视频| 香蕉操亚洲| 99在线精品观看99| 色欲天天综合| 婷婷五月婷婷| 久久99热精品a片在线观看| 人妻中文字幕网| 色爱亚洲| 亚洲天堂爱爱| 久久婷婷视频| 热99久久这里只有精品| 天天摸天天舔在线视频| 婷婷九月丁香中文| 色五月婷婷久久| 久久这里有精品在线观看| 99re这里只有精品视频了| 美女精品一级不卡视频| 另类国产区| 色婷婷丁香五月天| 丰满人妻一区二区三区| 婷婷五月丁香综合人妻| 免费人人操| 亚洲第一黄网| 99久精品| 一级七香蕉| 九九av| 人人草人人舔| 思思热在线视频99| 热的国产,热的综合,热的有码| 99小视频在线观看| 91九色PORNY中文啦| 六月婷婷综合| 婷婷伊人綜合中文字幕小说| 99在线观看精品视频| 午夜五月天| 久一这里有精品国产| 91精品婷婷国产综合| 婷婷综合中文| 丁香五月狠狠在线观看| 色婷婷av综合网| 99超级碰免费视频| 欧美人与性动交CCOO| 97人人操人人爽| 青青草原伊人网| 国产一级婬片毛片| 日韩十国产极品久久| 好好日激情五月天| 亚洲瑟瑟精品在线| 婷婷五月天另类网站| 丁香五月AV在线| 91碰视频| 亚洲人成网亚洲欧洲无码久久| 99综合入口| 成人片黄网站色大片免费毛片| 九九黄色网| 色噜噜狠狠色综合日日| JAPANRCEP老熟妇乱子伦视频 | 五月天大香蕉av| 亚洲激情久久| 亚洲精品V天堂中文字幕| 色色五月婷| 99精品免费视频| 日本高清久久| 国产XXXX搡XXXXX搡麻豆| 久久99久久99精品免视看婷婷| 99re6久热只有精品6在线直播| 色综合com| 99在线热| WWW.国产| 91干99| 99热人人操人人操| 五月天丁香成人| 色一情一乱一乱91Av| 婷婷六月视频| 人人爽在线视频综合网| 色五月天视频| 色情五月婷| 操碰99| 久久xx| 色婷五月| 婷婷五月激情综合啪啪| 久久香蕉影院| 五月停停直播| 欧美婷婷综合| 99热在线播放| 丁香婷婷浪潮AV久久综合| 色婷婷av综合网| 综合久久综合综合| 天天色天天搡| 美女美女美女三级色天天天天天| 亚洲五月婷| 激情第四色| 9色91视频| 99精品久| 五月丁香香蕉| 天天操天天插天天射| 91打屁股视频网站| 九九久久这里只有精品XB| 激情五月婷婷色播网| 色99在线视频| 激情网五月天| 1999天天操夜夜操| 国产探花AV在线| 日日舔夜夜操| 色五月婷婷久久| 琪琪色五月婷婷老师| 五月婷婷爽爽爽| 夫妻超碰在线| 激情久久五月网| 久久99精品久久只有精品| 婷婷综合网站| 大香伊人婷婷| 亚洲 在线 性爱| 色色色成人网| 国产毛片精品一区二区色欲黄A片| av五月天婷婷丁香| 色情·com| 色综合激情| 天天搞天天爽| 日韩综合久| 色综合五月在线| www.99热视频| 五月丁香色欲| 国内婷婷丁香社区在线播放| 日本久热| 一级黄色操B| 综合五月草| 天天操狠狠操| 激情婷婷丁香五月| 天天肏屄夜夜爽| 九九热这里只有精品6| 精品乱码久久久久| 婷婷性爱| 九九色色色| 成人网站免费sxj| 另类视在线| 国产做爰视频免费播放| 婷婷五月欧美综合| 天天做天天爽| 亚洲黄色影视| 五月丁香福利| 99毛片| 狠狠狠狠狠操| 免费观看全黄做爰的视频| 69久久99精品久久久久| 五月天婷婷成人网| 婷婷伊人五月丁香天堂网| 99久久99热| 大香蕉伊人99| 久久综合伊人77777蜜臀| 99热首页在线30| 99性视频| 天天搞夜夜爽夜夜爽| 色色色五月婷| 97操碰在线视频| 丁香六月色婷婷| 1024在线一区| 亚洲AAAA网| 人人操五月天| 免费AV黄在线播放| 免费看欧美成人A片无码| 人人摸人人操人人爽| 婷婷六月天激情| 开心婷婷五月综合| 久热网在线视频| 国产成人精品一区二区三区视频| 天天激情夜夜干| 天天日,天天干,天天操| 色婷操逼| 五月婷婷开心网| 久月婷婷| 另类在线| 91精品国产综合久久密臀| 亚洲精品99| 五月婷婷色播视频| 少妇人妻人伦A片| www.激情在线| 少妇大叫太大太粗太爽了A片| 99视频内射三四| 91九色国产| 99碰碰碰| 超碰色综合| 综激情网| 99综合| 91在线日| 免费看欧美成人A片无码| 色婷婷丁香六月| 在线日韩视频| 青青草婷婷综合五月| 色色网站毛片| 26UUU精品一区二区| 超碰京东热av男人的天堂| 欧美丁香婷婷五月| 婷婷五月AV| 午夜免费试看| 综合激情网| 啪啪一区| 婷婷五月天激情丁香| 涩婷婷视频快播人妻| 婷婷激情图片| 丁香五月天激情网址| 开心五月婷婷| 婷婷综合五月天亚洲综合| 亚洲视频在线网| www.婷婷五月| 丁香婷婷激情综合五月激情| 婷婷在线中文字幕| 亚洲成人中心| 99热成人精品| 色婷婷综合丁香五月天| 欧美在线视频免费播放| 激情婷婷五六月天| 99热99艹在线观看| 欧美色99| 五月丁六月婷| 色婷视频| 噜噜五月天综合| 国产激情av| 婷色人人狠| 啪啪日本欧美| 超碰久热| 99久在线精品99re8热| 五月丁香福利| 色噜噜狠狠狠狠色综合久欧美| 综合色色色| 亚洲午夜AV| 五月婷在线| 婷婷综合爱| 五月丁香另类图片| 99热人人操人人操| 最近中文字幕大全免费版在线| 五月天激情网开心网| www.99久久久| 伊人丁香五月婷婷潮吹| 国产成人精品一区二三区熟女在线| 天天xxxxxx天天日| 色亚洲无码| 亚洲人成播放网站| 国产人妻777人伦精品HD| 99热这里只有精品青草| 五月丁香成人版| 99热碰碰热| 婷婷操逼| 亚洲AV综合在线观看| 亚洲乱码日产精品BD| 色综合色色| 国产色色在线| 99色视频在线观看最新| 九九热内射| 久久婷五月天| 99人妻碰碰碰久久久久视| 亚洲色色图片| 婷婷香蕉| 久草五月婷婷| 狠狠干在线| 五月丁香在线| 综合大香蕉| 这里只有精品视频一区| 日韩成人免费电影| 97se视频在线| 六月婷婷最新网址| 99热久久这里只有精品| 婷婷五月在线视频| 成人网址在线观看| 婷婷97碰碰| 婷婷五月天免费视频在线观看| 97色色色色色色色| 五月丁香六月久久| 丝袜大香蕉| 91传媒无码人妻精| 午夜激情久久| 亚洲影院婷婷色| 校花娇喘呻吟校长陈若雪视频| 五月婷婷综合激情网| 另类五月激情| 九一99| 亚洲综合网激情小说| 久久女人天堂| 91色在线/日韩| www.五月天色色色| 色婷婷激情四射视频| 欧美 色婷婷| 婷婷丁香六月| 9久久婷婷国产综合精品性色| 丁香五月婷婷大香蕉| 九九色之九九色之88| 亚洲天堂AV综合网| 9久热在线视频| 久久久久久久11111111111| 久草大| 婷婷成人视频| 无码橾| 五月天婷婷丁香基地在线观看| AV79| 五月综合激情网| 五月丁香六月婷婷无码| 色播五月婷婷| 色婷另类| 91久久久久久久| 亚洲AV成人精品日韩在线播放| 《》【无码】想被搞到爽AV应募而来的超M素人 西纯子 10musume-011723-01 | 激情婷婷色色| 久久婷婷成人| 五月丁香色婷婷伊人| 亚洲成人一区| www.婷婷网| 神马久久五月天| 国精产品一区一区三区免费视频| 91久久日日| 99久久99综合| 久re在线| 婷婷狠狠青青| 亚洲精品成人片在线播| 天天色五月婷婷91久久久久久久| 免费超碰在线| 色域五月婷婷丁香| 99er国产| 色狠久| 99热精品在这里| 五月婷婷婷丁香播| 久久这里只精品| www.狠狠| 日韩三级视频一区二区| 久久九区| 五月丁香好婷婷A片网| 99在线视频观看| 精品综合网在线| 野战J办公桌椅H| 国产精品成av人在线视午夜片| 91九色偷拍| 久热天堂| 天天婷婷综合| 亚洲激情网站| www.91久久| 日日操天天操| 99精品偷拍视频| 高清视频一区| 五月丁香六月激情综合在线| 丁香五月六月| 超碰碰碰碰| 依人大香蕉在钱1| 99色.com| 久婷婷久草| 天天综合在线网| 激情综合九月| 播丁香五月婷婷欧美| 国产探花一片区| 超碰人人色| 五月丁香网中文字幕| 天天爽,夜夜爽| a网站免费观看| 九色PORNY9l原创自拍| 91久女| 五月天狠狠色| 欧美英丁香开心快乐六月天网| 五月丁香六月婷婷亚洲视频| 99久在线精品99re8| 极品人妻VIDEOSSS人妻| 欧美丁香五月97色| 久久小片| 天天骑天天操| 狠狠色狠狠爱| 婷婷四色五月| 五月天婷婷无码| 中文字幕人妻一区二区| 888精品福利地址| 色婷婷丁香| 精品人妻一区二区三区四区不卡在| 日韩av在线播放综合网| 超碰在线99热| 色噜噜婷婷| 婷婷开心激情| 超碰不卡在线| 天天橾夜夜爽| 丁香六月婷婷| 在线中文亚洲| 色五月丁香六月婷婷| 久久99精品九九久久久婷婷| 日韩AV一区二区三区| 激情综合五月激情XXXX| 久久9视频欧美| 日韩人人操| 五月天五月色婷婷综合| 色色免费网站| 伊人综合色干| 色婷婷丁香五月在线观看| 国产亚洲精品久久久久久郑州| www.maotanji.com| 婷婷狠狠操| 91人人人人人| 狠狠999| 26uuu最新地址| 丁香视频| 亚洲天堂色色| 996黄色片| 综合狠狠五月婷婷| 婷综合| 丁香五月激情五月色综合| 国产99精品免费视频| 亚洲网视屏| 97艹| 激情图片五月天| 九九九激情网| 五月天婷网| 久久久国产精品黄毛片| 五月熟妇婷婷久久| 国产日韩精品SUV| 天搞天天天天天| 人妻九九九九| 色婷婷大香蕉| 亚洲欧洲另类| 国产99美少妇| 五月天欧美 另类小说| 五月天激情四射| 色伊人啪| 日本精品99网站| 九九99热| 色综合九九| 美女黄频aⅴ视频| 久婷婷色| 五夜婷婷| www.99热| 国产热精品| 淫五月停停| 激情亚洲婷婷六月| 97成人在线视频| 九一99| 色婷婷成人久久| 亚州色色色| 成人 九九九九| 99综合| 欧洲S级在线观看| 婷婷激情九月| 久久久久久xxxxx| 狠狠操狠狠插| 亚洲 小说 欧美 激情 另类| 991自拍视频| 五月婷婷中文| 熟女激情网| 色色网站| 婷婷六月激情综合| 无码激情AAAAA片-区区| 这里只有精品99www| 久操综合| 色婷婷操逼| 狠狠操狠狠操| 99re思思精品在线观看| 人妻中文字幕网| 五月天色综合| 99ri视频| 激情性爱五月天网页| 婷婷丁香五月综合激情小说| 久久新| 五月丁香啪啪网| 99热久只有精品首页| 欧洲色区| 丁香婷婷六月男男| 性色播| 欧美色男人网站| 2025色婷婷| 国产精品社区| 香蕉人妻AV久久久久天天| 欧美爆乳一区二区三区| 91色色色| 久草x色在线观看99| 欧美日韩AAAA| 色五月天影视| 五月色婷丁香| 色色婷婷丁香| 五月丁香色婷婷综合| 毛v一区二区视频| 色综合色综合网| 色五月 激情婷婷 综合五月天| 久久亭亭电影| 婷婷综合网| 丁香五月六月婷婷殴美综合| 亚洲成人九九九| 综合激情婷婷| 99性爱| 五月人人丁香婷婷五月人人丁香 | www,999日本色| 丁香激情五月| 深爱五月亚洲| 激情五月综合网| 九九久久精品| 色五月激情综合| 婷婷五月天激情视频| 色婷婷A| 综合AV网| 激情五月天色色网| 婷婷激情在线| 欧美色爱五月天| 精品久久婷婷五月天| 婷婷激情啪啪| 婷婷五月丁香亚洲| 久久久中文| 日日杆天天| 青青.com| 日本久久性| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 五月天婷婷综合色| 日日干天天| 草五月| 九九热在线视频,| 色色免费网站| 久久一品区| 国产做爰视频免费播放| 久久人妻久久| 99久在线观看| 丁香 久久| 99热这里只有精品18| 五月 丁香 欧美| 日韩av在线免费观看| 这里只有精品视频在线看| 狠狠艹狠狠艹| 五月丁香| 亚洲精品国产setv| WWW·色色色·COM| 99在线综合视频| 亚洲综合网在线| 婷婷视频网| www.yw尤物| 91人操| 伊人在线视频| 综合噜噜| 色五月av| 亚洲精品99| 狠狠草狠狠草| 五月天亭亭俺也| 日本成人噜噜| www色五月天| 五月天激情国产综合AV| 五月亭亭六月激情| 天天爽夜夜爽夜夜爽精品| 色综合激情| 久久婷婷网| 色婷婷五月综合色婷婷| 丁香社92视频| 天久久久久| 五月丁香婷婷啪啪| 极品少妇高潮啪啪AV无码| 岛国av网站| 亚洲美女高潮久久久久久69| 91干视频| 91人操人人人操人| 五月丁香啪啪综合| 超碰碰碰碰| 综合啪啪| 九九亚洲| 激情综合五月丁香| 思思9久久| 久综合4| 北条麻妃伊人 | 成人精品视频99在线观看免费| 婷婷丁香五月综合| 日韩少妇内射免费播放| 中文字幕丰满乱孑伦无码专区| 九九爱精品网站| 婷婷五月激情小说| www狠狠com| 色五月超碰| 99热九九这里只有精品| 婷婷色中文字幕| 亚洲精品网站色视频| 免费的日逼视频| 伊人丁香婷婷东京| 99热这里精品| 9久久精品| 亚洲AV免费在线| 成人在线二区| av无码电影| 国产精品成人在线| 五月丁香啪啪激情| 色爱亚洲| 婷婷网五月天| 色婷婷五月天av在线| 野外99热| 玖玖色综合| 激情综合青草| 九九色综合视频| 97色97干| 少妇真实被内射视频三四区| 五月天婷婷激情四射综合| 激情五月瑟瑟| 五月婷婷久久久久| 婷婷基地成人五月天| 天天射夜夜骑| 91九色精品熟女内射| 丁香婷婷六月天| 婷婷丁香97| 伊人五月天在线| 五月桃花网综合| 久久新| 久久久久婷婷五月热综合| 六月婷婷狠狠| 91无码高清| 婷婷五月天福利| 99久久高清视频| 亚洲精品色色| 噜噜视频| 国产真实乱了老女人视频 | 亚洲AV激情五月综合网| 99精品性爱| www.91操| 丁香婷婷浪潮AV久久综合| WWW.99热| 天天爽夜爽| 激情五月小说婷婷| 久久久精品99| 五月丁香网中文字幕| 激情婷婷五月天| 粉嫩AV久久一区二区三区| 色色丁香婷婷五月天| 丁香五月影院| 极品人妻VideOssS人妻| 成人无码精品1区2区3区免费看 | 99精品久久久久| 九九丁香社区欧美激情| 人妻射精AV| 五月天激情婷婷| av一级棒av| 爱射综合| 五月婷婷之美女图片| 久热大香蕉| 91人碰| 爱之国产色情综合| 丁香婷婷九月| 久久日本wwww色| 夜夜www| 激情综合五月| 性爱激情小说AV五月丁香花| 色五月成人在线| 色色色热| 国产成人+综合亚洲+天堂| 六月五月婷婷| 99精品国产在热久久| 激情综合区| 色婷婷小说网| 一区无码| 情婷婷五月天| 热99玖玖99玖玖99九九| 色综合五月在线| 九九这里只有精品| 伊人久久大香线蕉亚洲五月天,| 99热久久这里只有精品| 日本啪啪天堂| 91干在线| 午夜成人网站在线观看| 婷婷五月丁香香蕉| 五月丁香婷婷AV| 潮汕成人AV片在线| 久狠日av| 亚洲成人av在线观看| 操丝袜视频影院导航| 99网| 五月天影院婷婷在线观看| 天天噜噜| 综合五月丁香六月婷婷| 色婷久久| 五月婷婷综合久久| se影音资源在线观看| 久久44| 激情五月婷婷在线| 黄色高清无码| 五月伊人婷婷| 99热热热国产超碰| 丁香久久五月婷综合| 婷婷 伊人 久久| 久9久成人精品视频| av激情在线| 人人九色| 99热在线播放| www.夜夜操| 日本久久天堂| 九色视频91| 丁香五月图片| 亚洲网综合在线| 色色丁香五月天| 91九九| 欧美性猛交99久久久99| 91天天操天天干天天射| 天天搞天天色综合| av色色国产| 激情五月黄色小说| 最近中文字幕大全免费版在线 | 久久这里面只有精品视频| 国产在线aaa片一区二区99| 五月丁香网站在线播放| 日本成人内射| 91视频五月丁香| 欧美天天搞| 色色色婷婷五月天| 99热精品网| 综合久久十三| 欧美va在线观看| 久久多色| 大色鬼综合| 久久这里只有精品8| 六月婷久久| 五月丁香婷婷色| 激情美女五月天激情在线| 色五月97| 五月婷婷丁香| VfJxEwPH| 任你干嘛免费视频播放| 五月婷婷香| 婷婷免费无视频| 欧美啪啪五月天| 99婷婷| 久久人妻系列| 26.uuu丁香五月婷婷| 玖玖婷婷五月天| 97婷婷五月天| 狠狠情色| 亚洲亚洲人成综合网络| 亚洲中文乱字字幕在线永久| 九九热这里只有精品23| 综合另类激情| 天天干狠狠| 久草xx性爱视频| av在线观看网站| 青草视频在线播放| 久久久久亚洲AV成人无码电影| 久久激情综合| 大香蕉狼人久久| 天天肏夜夜肏| a久久免费视频| 99色在线视频| 一区操| 亚洲免费看片| 日本高清综合网五月丁香| 欧美群妇大交乱婬网| 91 影音先锋| 91精品婷婷国产综合久久| 天天狠狠色噜噜| 99ri精品| 2050人人操免费工开爱 | 五月天婷婷久色| 操操操91| 久久人妻熟女一区二区| 五月婷婷啪啪网| 五月丁香激情深爱婷婷| 天堂中文国产| 婷婷婷五月香蕉| 六月丁香啪啪| 亚洲色综合| 综合网亚洲| 精品久久久久久久人妻| 婷婷欧美偷拍综合| 97黑人精品区| 国内在线99视频| 欧美三级巜人妻互换| 欧美日韩91| 五月婷婷婷自由综合| 精品视频这里只有精品| 国产成人高清| 99免费青青蜜臀| 91呦呦呦| 国产亚洲精品久久久久久久久动漫| 日本99热| 丁香六月啪啪啪| 五月婷婷六月奇米网丁香| 五月激情婷婷图片基地| 激情久久五月天| 色综合视频| 肏日网在线看| 久久探花91swag| 国产日产亚系列精品版优势| 丁香久久综合| 亚洲丁香五月天视频| 天天橾夜夜爽| 第四色26uuu| www.com操| 五月丁香亭亭成人电影| 人人澡天天色天天做| av在线婷婷| 少妇出轨做爰高潮A片| 九九伊人网| 婷婷六月色| 伊人激情影院| 亚洲色另类| 五月丁香综合啪啪| 人妻人人操| aa久久| 五月丁香激情综合网| 直接看的AV网站| 中文字幕簧片| 五月丁香婷婷激情| 五月天激情Av| 99色看这里只有精品| 成人视频九九| 综合激情网| 色国产五月| 激情深爱婷婷网| 二人电影免费版在线观看| 婷婷伊人綜合中文字幕| 激情四射婷婷| 丁香婷婷网| 99爱视频精品在线观看| 激情美女五月天| 777久久综合视频| 五月天激情日色在线| SS丁香五月婷婷| 色色色.COM| 五月婷婷丁香五月 | 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 欧美三级巜人妻互换| 国产午夜伦鲁鲁| 五月天丁香久久综合| 婷婷五月天av小说| 婷婷成人在线| 91狠狠色丁香婷婷综合久久| 大香蕉欧美在线| 激情另类综合| 日本久久99| 色五月婷婷7777| AV网在线观看| 9有码中文| 99色色热热| 色视五月天婷婷| 五月之婷婷| 久久性爱视频| 思思热在线观看| 99色婷婷| 97超碰,人人舔,人人操,人人摸 | 色婷婷88| 久久久8| 99热99热在线观看| 激情网综合| 99色在线观看视频| 婷婷丁香成人| 超碰无码老师| 欧美性交一区二区三区| 啪啪色区| 99热精在线九九久久保| 亚洲综合激情五月| 日韩超碰在线| 99热亚洲| 91丨九色丨老农村| 五月婷婷丁香成人网| 怡红院精品视频久久久久久久久| 夜夜干天天操| 五月婷婷色| 亚洲V国产V欧美V久久久久久 | 国产av影片| 日韩黄黄| 激情五月天视频| 色婷婷亚洲婷婷| 草榴视频黄色网| 99热 这里只有精品 国产 日韩| 99热777| 色丁香五月婷婷| www.一区二区三区| 在线日韩视频| www.成人婷婷综合| 亚洲国产精品VA在线看黑人| 中文av在线观看| 五月丁香六月婷婷,婷| 丁香狠狠色婷婷久久无码视频| 色播五月婷婷| 丁香五月网| 玖操97| 99精品视频在线观看| 9久热在线精品| 激情无码五月天| 久久 婷婷 五月天| 99re资源在线视频导航| 激情小说五月天社区丁香| 五月天偷拍| 成人αV视频免费观看| 六月婷久久| 五月婷婷,六月激情| 婷婷六月久久综合导航| 激情综合婷婷久久| 草AV9999| 欧美经典片免费观看大全| 狠狠99| 天天综合社区| 小香蕉av| 天天搽天天射| 999热在线视频| 国产操肏网站| 丁香五月激情图片| 影音先锋按摩| 97九色视频| 超碰在线资源| 五月丁香色色综合| 五月丁香啪啪综合| 91精品国产99久久久久久天美| 色婷婷综合网站| 午夜少妇在线观看视频| 九九亚洲视频| 五月天激情四射网站| 激情综合在线播放| 天天撸天天干天天插| 91九九九九| 五月社区婷婷激情| 香蕉久久国产AV一区二区| 影音先锋色婷婷| 91成人视频| www.综合久久.com| 婷婷五月天视频亚洲| 4399精品一区二区| 五月婷婷手机在线| 成人αV视频免费观看| 五月婷人妻| 亚洲精品成人| 五月丁香好婷婷A片网| 丁香六月狠狠干| 小色小蛇伊人婷婷色香五月| 欧美日本另类| 激情五月丁香婷婷| 超碰人人色| 综合网啪啪| 久9热视频| 激情久久丁香| 色天使色婷婷| 久久总和99| 九九热10| 激情五月天影院| 热99国产精品| 丁香六月综合| 丁香五月日啪| 国产肥白大熟妇BBBB视频| 日韩无码成人电影| 欧美精品999| 激情五月天激情网| 在线天堂9| 久久 婷婷 五月天| 丁香六月激情综合| 九九婷婷综合| 操一区| 日本精品在线噜噜噜| 久操福利| 九九精品热| 五月婷婷丁香| 先锋资源996| 老师高潮流白浆喷水的A片| 五月激情综合深爱| 野外99热| 丁香五月最新地址| 五月香婷婷| 成人做爰A片免费看视频| 777精品成人a v久久| 99热国产在线| 丁香五月婷婷基地| 97狠狠色| 色欲色香综合网| 岛国av网| 狠狠色婷婷色| 99久久6| 春色激情第四色| 婷婷六月成人| 亚洲中文字幕AV| 五月丁香激情综合啪| 久久caop| 五月天婷综合| 热九九在线| 91九九九九九九| 99这里只有精品| 丁香五月天堂| 国产毛片操B| 丁香五月婷婷五月| 97色婷婷| 狠狠爱婷婷五月天| 久久婷.com| 天天日,夜夜爽| 五月天久久小说| 婷婷六月综合基地| 97色五月天| 碰超在线九色| 九九在线精点品| 99视频网| 丝袜大香蕉| www.zbzhongsen.com| 五月天天天色| 婷婷五月丁香av网站| 91av色色乱视频| 五月天亭亭俺也| 人妻狠狠操| 国产在线视频1234| 天天色播| 婷婷五月亚洲一本在线丁香| 激情小说五月丁香在线视频观看视频| 91在线精品一区二区| 伊人激情影院| 婷婷五月天电影区小说区| 99re66热这里只有精品| 91亚洲免费片| 亚洲亚洲人成综合网络| 狠狠色丁香婷婷久久综合| 婷婷五月天777| 狠狠se| 熟女强人妻一区二区三区四区无| 国产精品色婷婷99久久精品| 丁香五月香蕉在线| 婷婷五月天AV在| 另类少妇人与禽zOZZ0性伦| 色五月婷婷五月| 狠狠色丁香99| 99热主页日本| 91窝窝| 成人无码髙潮喷水A片| 亚洲综合五月天婷婷丁香| 丁香婷婷久久激情| 五月婷婷啪啪啪| 久久久久久久久久久jjjj| 亭亭玉月丁香| 狠狠色噜噜狠狠| 色综合网综合| 欧美激情五月综合| 琪琪色五月天| 中文字幕高清av| 五月婷婷色| 婷婷精品在线| AV伊人青草丁香六月| 五月天婷婷操逼视频| 日韩国产AV播放| 中国丰满熟女A片免费观| 婷婷久久综合| 欧美成人日韩| 欧美色婷婷| 亚洲国产成人裸舞| 日日日,com| 五月五婷婷网| 9热在线观看| 97操女视频| 九九在线热九九在线热99热| 婷婷社区五月天| 91超级碰在线视频| 色色色综合色| 国产精品人人妻人人爽| 丁香久久五月天视频在线观看| 婷婷色女| 色色综合网站| 伊人久久婷| 亚洲av成人在线| 六月婷婷视频| 五月丁香婷婷成人版| 97ai婷婷| WWW色色色COM| 色婷婷yy久| 久久激情中文| 国产午夜成人AV在线播放| 91一起操| 99色在线视频| 九九婷婷网五月天| 久久色情| 99啪啪视频| 婷婷午夜精品久久久| 五月婷婷六月天| 久久激情五月| 99亚洲视频| 91综合色| 五月天亚洲综合网| 天天日夜夜拍| 亚洲色夜| 夜夜资源站| 日韩久久色| 五月天婷婷在线播放| 97色在线| 五月婷婷九| 综合网色| 亚洲精品大片| 北京熟妇搡BBBB搡BBBB| 欧美搡BBBBB摔BBBBB| 色五月激情五月| 搡BBBB搡BBB搡18 | 丁香五月在线| www九九热| 日本一级一级一级一级| 四川BBB搡BBB爽爽视频| 2025超碰| 欧美激情久| 欧洲一区二区| 中文字幕第四色.999| 99热最新精品| 婷婷五月天堂网| 亚洲综合激| 五月丁香好婷婷A片网| 亚艹艹| 欧美成人网99网| 五月丁香六月色| 色色五月天激情| 狠狠干婷婷| 蜜乳av一级av| 99视频网址| 狠狠草在线观看| 极品少妇XXXX精品少妇偷拍 | 另类视频在线| 99re6在线视频精品免费| 97干在线免费| 色综合久网| 综合久久伊人| 中文字幕永久在线| 午夜性爱影视一区77| 79色色色色| 欧美性猛交99久久久99| 99激情| 这里只有精品96| 久久久久久久久久91| 天天做天天要天天爱| 超碰AAAAAAV| 综合色播| 激情六月丁香| 亚洲中文字幕在线观看| 激情综合文学| 九九热AV| 激情五月丁香激情综合网| 丁香五月激情婷婷婷婷在线观看| 五月天啪啪视频| 大香蕉 婷婷| 六月婷婷综合激情| 天天插夜夜爽| 五月天天天天天天天天天天天天天天天婷婷婷| 色综合九九| 午夜成人片400| 久久人操-久草婷婷-成人AV| 亚洲午夜精品久久久久久人妖| 日日射天天射| 中文字幕婷婷| 2025神马午夜福利| 中文字幕av久久爽一区| 五月丁香AV、伊人业余、性色熟妇 | 丁香五月婷婷偷拍| 亚洲中文无码成人| 深爱综合网| 深爱五月天| 亚洲激情综| 婷婷六月激情丁香| 激情综合亚洲| 91热在线观看视频| 98毛片| 99热只有这里有精品| 蜜桃成语时李时珍 免费| 玖玖99精品视频| 这里只有精品99www| 色色激情五月| 狠狠色噜噜狠狠狠狠狠色综合久久| 激情四射网| 九九综合久久| 日本色视| 免费看成人AA片无码视频吃奶| 99热久草| 桔色成人在线| 国产真实乱了老女人视频 | 播播网色播播| 婷婷五月天精品| 激情婷婷综合五月少妇| 日日夜夜婷婷| 色99婷婷五月天| 激情黄色五月天| 丁香五月手机在线| 99久久国产宗和精品1上映| 国产97色在线| 五月丁香久久呀| 五月婷丁香| 五月婷婷激情日本| 99热的无码| 99激情| 五月天激情图片| 成人va在线播放| 亚洲xx在线| 国产成人+综合亚洲+天堂| 五月天狠狠| 婷色五月天| 开心五月婷婷激情| 久久婷婷五月综合啪| 啪啪啪啪五月天| 人人操超碰| 免费黄色视频网址| 色久影院| 天堂色色色| 这里精品| 综合久久狠狠| 亚洲女婷婷五月基地综合久久久| 欧美激情综合色综合啪啪五月| 97在线综合| 婷婷六月激情| 99热插| 五月丁香六月综合激情| 丁香五月天91| 开心综合激情综合| 熟女人妻一区二区三区免费看 | 亚洲无码99| 91操屁股| 九热视频| 婷婷五月丁香性爱| 天天草天天日| 亚洲xx在线| 天堂AV三级| 免费视频99| 天天做天天爱天天日| 久久只有18视频| 婷婷五月激情四月综合| 黄网在线播放| 婷婷中文字幕| 色五月婷婷久久| 思思色播| 99激情| 桃色激情婷婷伊人网| 99热精品在线观看| 开心五月婷婷六月丁香| 开心五月婷婷| www 五月天 com| 99久久国产综合精品五月天喷水\| 五月丁香色播| 色婷婷狠狠禁18久久| 婷婷五月天免费| 中文字幕欧美精品久久| 久久99热久久99精品| 综合九九日本| 色九区| 69精品人人人人| 九月丁香亭亭| 日韩啪啪网| 久久综合网免费视频| 亚洲色婷婷| 五月天 综合 在线| 国产内射婷婷| 色色亚洲无码| 99精品热| 香蕉久久国产AV一区二区| 丁香五月婷婷婷婷欧美综合| 91精品91久久久中77777| 五月天婷婷综合久久| 国产FREESEXVIDEOS性中国| 天天色,天天操,天天射| 色婷婷yy久| 丁香五月激情视频| 欧美熟妇一区二区三区| 九九这里是免费的视频5| 亚洲五月天色| 一本大道嫩草AV无码专区| 天天色天天爱天天爽| 天天操天天干天天射| 丁香五月AV| 综合欧美五月婷婷| 九八Av| 新激情五月天天在线网| 另类视频一区| 大香蕉 婷婷| 极品五月天| 久久九九@| 五月天久久久| 我爱宗和色| 天天操五月天| 99热这里只有精彩| www.六月丁香看AV| 婷婷综合影院| 亚洲精品一区中文字幕乱码| 停停五月天激情网| 99re在线视频| 被强行糟蹋的女人A片| 久久九九视频| 久久婷婷激情| 成人免费120分钟啪啪| 激情网婷婷五月天| 婷婷色五月亚洲| 五月婷婷黄色毛片| 丁香婷婷色五月激情综合| 五月丁香六月情亚洲|