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

Apex AI輔助編碼助手的設計和實踐

人工智能
Apex通過 RuleSync 與 ProjectService 實現CursorRules規則模板一鍵同步,依托配置化 MCP 加速工具集成和能力提升,以安全令牌與白名單機制強化治理,并借助 UsageRecorder 與 TraceService 提供可觀測性,全面支持高效、安全、可控的使用交付與版本去迭代化管理。

一、背景

二、架構設計總覽

三、功能設計&落地

    1. 激活與裝配流程

    2. 認證與安全(AuthService + Storage)

    3. 規則知識庫工程化(RuleSyncService)

    4. 遠程 webview 與版本編排(Webview + VersionChecker + Trace)

    5. 項目服務(ProjectService):Monorepo識別、模板拉取與寫入

    6. 埋點與活躍情況記錄(LoggerService + UsageRecorder)

    7. Webview 消息編排(MessageHandler)

四、總結&展望

一、背景

Apex以vscode插件為主要載體,接入SSO認證、打通CursorRules知識庫、Webview遠程UI、實現無感安裝MCP、創建智能體、使用智能體等能力,幫助實現提示詞撰寫效率的提升,降低了使用過程的費力度。通過知識庫、智能體等可實現在保障代碼質量同時,進一步提升AI代碼生成占比。

除了功能層面的能力,想必大家對Apex內部實現原理應該也很感興趣,如何打通知識庫、智能體使用時,MCP為什么自動安裝了,下面將從技術實現角度,剖析Apex 如何將“AI 能力”工程化落地到 Cursor 開發流程中。了解Apex是如何激活裝配、打通SSO認證,同步 Cursor Rules 知識庫、通過遠程dist包實現webview UI渲染,并提供智能體能力,實現無感更新,消息如何編排,如何識別大倉還是獨立應用等。

二、架構設計總覽

圖片圖片

Apex 以插件為主控,Webview 承載 UI 與業務交互,服務層聚合認證、工程上下文、CursorRules知識庫、埋點等能力,MCP 以“配置即工具”的方式進行邊界的擴展。實現三端(插件-前端-服務端)通過版本編排解耦vscode插件的迭代周期,在安全(鑒權)、可觀測(日志與活躍情況)、工程落地(規則知識庫與智能體模板)之間取得平衡。

三、功能設計&落地

1.激活與裝配流程

為實現插件的穩定啟動,在插件注冊過程中,出現異常失敗也不污染后續狀態,通過事件注冊按需加載,避免了冷啟動插件帶來的抖動問題。

圖片圖片

要點流程介紹:

  • 版本檢查先行:防止低版本 Cursor 帶來功能不兼容。
  • 早期守衛 workspaceRoot,避免在無工作區時繼續初始化產生隱式 NPE。
  • 服務單例初始化順序:ProjectService(工程上下文)→RuleSyncService(規則聚合/監聽)→ StorageService(持久能力)→ AuthService.initialize()(異步認證獲取 token 與 userInfo)。
  • 鑒權失敗直接中斷,避免后續埋點與 webview 的臟狀態。
  • 命令注冊分散在此處,MessageHandler負責Webview 指令編排。

圖片圖片

// ...
VersionChecker.checkVersion();
const root = workspaceRoot(); 
if (!root) return;  // 早期守衛
ProjectService.getInstance();   // 工程上下文
const auth = AuthService.getInstance();
const logger = LoggerService.getInstance(context);
const user = await auth.initialize(); 
if (!user) return;  // 認證失敗即止損
logger.watch();   // 可觀測
// 注冊 Webview/命令/規則監聽 ...

2.認證與安全(AuthService+Storage)

通過接入SSO實現可以單點登錄閉環 + 本地僅存最少信息,降低泄漏面、失敗可針對進行快速反饋。后期記錄用戶維度智能體的使用、記錄用戶的關鍵行為埋點,從而進一步實現及時私聊溝通解決告警出現的問題,另外,針對用戶的使用習慣和使用情況可進行針對性的分析和需求收集。

圖片圖片

圖片圖片

圖片圖片

令牌獲取流程(嵌入端口監聽 + 瀏覽器回調):

async initialize(){
  const saved = await storage.getAuthToken();
  const token = saved?.trim()? saved : await login();
  return await validateToken(token) ?? await login();
}

令牌回調服務器(端口探測 + CORS + 路由校驗):

import http from 'http';
import * as vscode from 'vscode';
const LOWCODE_PLATFORM_API = 'https://xxx.yyy.zzz/ddd';
const PORT = 9527;


const findAvailablePort = (startPort: number, endPort: number = startPort + 10): Promise<number> => {
 //  端口監聽邏輯
};


export const requestToken = async () => {
  // 驗證token有效性
}
  • 數據結構與算法設計:

a.端口探測算法:線性遞增(最多 10 次),失敗上拋;簡單可靠,代價可接受。

b.CORS 與 OPTIONS 預檢處理;路由嚴格校驗zzz/ddd,僅取請求頭 accesstoken。

c.超時控制(5 分鐘)避免懸掛。

  • 持久化:
// ... 省略若干
export class StorageService {
    // ...
    public async saveAuthToken(token: string): Promise<void> {
        await this.secureStorage.saveSecret(
            StorageService.CACHE_KEYS.AUTH_TOKEN,
            token
        );
    }
    public async getAuthToken(): Promise<string | undefined> {
        return await this.secureStorage.getSecret(
            StorageService.CACHE_KEYS.AUTH_TOKEN
        );
    }
    public async deleteAuthToken(): Promise<void> {
        await this.secureStorage.deleteSecret(
            StorageService.CACHE_KEYS.AUTH_TOKEN
        );
    }
    public async clearAll(): Promise<void> {
        for (const key of Object.values(StorageService.CACHE_KEYS)) {
           // 遍歷清除key值
        }
    }
}
  • 在 secrets 中存敏感數據,安全性較高;clearAll() 同時清理多個狀態緩存值,防止殘留。

3.規則知識庫工程化(RuleSyncService)

通過Gtlab維護遠程知識庫文檔,實現知識庫聚合,模板/規則“一鍵對齊”,多包倉不會出現雜亂和上下文丟失等情況。大倉模式下實現批量并發拉取,非大倉模式下實現兜底向上拉取能力。

知識庫規則拉取至各應用邏輯

圖片圖片

模板拉取過程:GitLab 分批并發,chunk 化。

export async function fetchTemplateFiles(
    projectId: number,
    templatePath: string,
    branch: string
): Promise<Array<{ path: string; content: string }>> {
    // git接口獲取文件并進行分發同步
}
  • 數據結構:數組分塊 + Promise.all 并發,有效權衡吞吐與限流風險(每批 5 個)。
  • 模板寫入(按類型路由到 .cursor/rules/basic.mdc、notepads 或工程根):
export async function writeTemplatesToDisk(files, templatePath, targetRoot, type?) {
    for (const file of files) {
        // 處理模板寫入
    }
    return true;
}
  • .gitignore 同步策略(追加不重復的規則):
export const syncGitIgnoreToPath = async (targetPath: string, ignoreRules: string[]) => {
    // 追加ignore邏輯
};

子應用規則同步至邏輯

圖片圖片

監聽與同步策略:

public startWatcher() {
  const pattern = new vscode.RelativePattern(this.workspaceRoot, '*/**/.cursor/rules/*.mdc');
  this.watcher = vscode.workspace.createFileSystemWatcher(pattern);
  
  this.watcher.onDidCreate(uri => {
    // 同步變更mdc
  });
  
  this.watcher.onDidChange(uri => {
    // 同步變更mdc
  });
  
  this.watcher.onDidDelete(uri => {
    // 移除指定mdc
  });
}

規則改寫:

export function writeRelativePathToContent(content: string, relativePath: string) {
    // 相對路徑注入 + 目標文件聚合為 .sync.mdc
}
  • 算法說明:

a.提取 mdc 頭中的 globs,對不含路徑分隔符的 glob 自動加 /**/,再拼接相對路徑前綴,確保規則定位到子包內。

b.默認兜底 **/*.*,覆蓋子目錄所有文件,提升易用性。

  • 目標文件命名:
private getTargetPath(fsPath: string) {
  // 針對同步過來的所有mdc文件進行重命名
}
  • 將子倉的規則扁平化同步到根目錄 .cursor/rules/*.sync.mdc,避免分散規則導致的遺漏。

4.遠程 webview 與版本編排(Webview+VersionChecker+Trace)

由于Apex插件的更新需要手動通過dx vs更新,修復問題或有新功能無法實時進行更新,新版本有問題無法回滾及時止損。

Apex通過DNF接口獲取當前遠程版本webVersion、coreVersion,對比當前local加載版本,實現無感更新或回退。

  • 重新加載方式:直接拉取最新版本。
  • Tab重新點開,實時檢測最新版本,點擊更新按鈕實現更新。

圖片圖片

遠程加載邏輯(支持本地調試、回退遠端 CDN):

const v = await fetchWebVersion() || 'latest';
const local = useLocal() && await ping('http://localhost:9527/...');
const js = local ? mapToExternal(local) : cdn(`@apex-plugin/web@${v}`);
return htmlWith(js, csp());
  • 關鍵要點:

a.從DNF后端接口獲取webVersion,優先 USE_LOCAL且本地可訪問則映射本地端口。

b.動態 CSP(當前較寬松,含'unsafe-eval'),滿足構建產物運行,未來會按資源域名白名單收緊。

c.版本編排:Web UI 可獨立灰度;插件端僅負責加載版本號對應的資源。

Cursor 版本下限攔截:

export class VersionChecker {
  private static readonly MIN_VERSION = "0.46.0";
  
  public static async checkVersion() {
    const isCursor = vscode.env.appName.toLowerCase().includes("cursor");
    if (!isCursor) {
      return;
    }
    // ... 讀取本機 Cursor 安裝目錄,比較版本,小于閾值彈升級引導
  }
  // compareVersions(v1, v2) 三段位點比較
}

版本注入的位置(可用于埋點/展示):TraceService.setPluginVersion(v)+ getPluginVersion() 默認讀取core package.json。建議在宿主(packages/plugin)激活時注入真實發布版本,確保埋點準確。

5.項目服務(ProjectService):Monorepo識別、模板拉取與寫入

通過識別應用是否是大倉應用,便于后期進行不同類型應用的業務邏輯處理,如知識庫同步在大倉下和單倉下的不同分支邏輯是不同的。大倉下子倉的規則會被自動聚合到頂層.cursor/rules下,實現規則命中率顯著提升。

Monorepo 識別與項目列表收集方式:

public isMonorepo(): boolean {
    try {
        // 通過判斷是否有`pnpm-workspace`判斷是否是大倉
        // 獲取 package.json 中 workspaces 進行判斷是否大倉
    } catch (error) {
        console.error('判斷monorepo失敗:', error);
        return false;
    }
}

6.埋點與活躍情況記錄(LoggerService+UsageRecorder)

通過組合心跳與焦點事件,確保用戶離開窗口也能形成完整閉環記錄,便于后期進行用戶行為畫像等分析。

事件監聽與活躍態判定:

start() {
  // 開啟事件監聽記錄
  this.eventList = [
    // 多個事件記錄綁定...
  ];
}
startInterval() {
  if (!this.walkClocker) {
    this.walkClocker = setInterval(() => { this.reportUsage(); }, this.walkInterval);
  }
}
  • walkInterval=30s 的心跳,配合窗口焦點事件強制上報一次,確保離開窗口時記錄“單次活躍時長”。

埋點上報示例:

const reportTimenote = async () => {
  // 記錄用戶活躍情況、包含分支、版本、倉庫等等信息
}

性能與可靠性:

  • 事件監聽廣泛但回調輕量(更新時間 + 定時器驅動),無重 IO。
  • 遠端上報失敗未中斷主流程,可再考慮指數退避與采樣策略。

7.Webview 消息編排(MessageHandler)

MessageHandler 作為 Webview 與服務層的協調者,不承載復雜業務邏輯,單一職責,實現路由 Webview 消息到服務層,支持失敗統一回發,前后端協作清晰,便于后期擴展和灰度,有良好的可維護性。

  • 獲取插件/核心版本:handleGetPluginVersion(從 TraceService.getPluginVersion() + package.json.version)。
  • 生成規則:handleGenerateRule→.gitignore 同步 + 模板拉取寫入+ AI 角色寫入 + README 打開。
  • MCP 相關:handleHandleServerConfig、checkMcpList、fetchInstalledMcpList、initRuleMcpConfig。
  • 導入提示詞:handleImportPrompt寫入 .cursor/notepads/note-*.private.md 并輔助插入到 Composer。

四、總結&展望

Apex通過 RuleSync 與 ProjectService 實現CursorRules規則模板一鍵同步,依托配置化 MCP 加速工具集成和能力提升,以安全令牌與白名單機制強化治理,并借助 UsageRecorder 與 TraceService 提供可觀測性,全面支持高效、安全、可控的使用交付與版本去迭代化管理。

Apex 的核心在于“把 AI 真正落在工程實踐之中”,以插件為載體打通認證、上下文、CursorRules規則和Cursor;以 MCP 為能力邊界實現“配置即擴展”;以可觀測為保障推動插件能力持續演進。通過“單例化、配置化、遠程化、工程化”的設計原則,讓團隊在享受 AI 編碼效率的同時,最大限度保持工程可控與可治理。

但是受限于智能體執行需要手動觸發,開發者可能會存在遺忘執行的情況等,下一步計劃智能體執行支持命令行觸發,預期試行添加到 git hook中commit提交代碼后自動執行,避免遺忘,提升Apex更多可玩性。

責任編輯:武曉燕 來源: 得物技術
相關推薦

2024-11-15 16:35:13

2024-09-13 10:01:51

2023-01-31 07:47:14

Dooring低代碼輔助設計

2024-12-31 13:30:00

2025-02-10 03:55:00

2024-08-26 09:30:00

AI編程

2012-06-05 01:08:12

設計開發

2025-01-08 13:30:00

2024-02-29 10:05:23

AIGitHub編碼助手

2018-11-12 12:45:19

2024-06-06 08:42:01

2025-05-28 04:00:00

谷歌AI編碼助手

2020-11-06 08:54:05

SAP ABAP

2023-05-12 18:42:13

得物AI平臺

2025-05-20 00:08:00

2023-05-16 09:53:18

ChatGPT人工智能

2024-07-11 15:26:23

2025-05-23 10:41:00

點贊
收藏

51CTO技術棧公眾號

韩国19禁主播vip福利视频| 在线不卡一区二区| 色一情一乱一伦一区二区三区丨| 伊人久久亚洲综合| 国产精品chinese| 日韩av在线导航| 日韩在线不卡一区| 蜜桃在线视频| 亚洲欧洲av在线| 国偷自产av一区二区三区小尤奈| 久草热在线观看| 欧美日韩综合| 在线精品91av| 久久人妻一区二区| 97精品资源在线观看| 欧美日韩国产色视频| 亚洲国产综合自拍| 四虎影院在线域名免费观看| 毛片av一区二区三区| 97在线观看免费| 三级影片在线看| 欧美丝袜激情| 日韩精品免费在线观看| 日本r级电影在线观看| 精品欧美一区二区三区在线观看| 亚洲永久精品大片| 中文字幕一区二区三区最新| 精品一二三区视频| 成人美女视频在线看| 成人淫片在线看| 国产美女www爽爽爽| 亚洲精品激情| 欧美激情一区二区三区高清视频 | 欧美第一淫aaasss性| 女人又爽又黄免费女仆| 久久悠悠精品综合网| 日韩三级电影网址| 国产无色aaa| 日韩福利影视| 欧美日韩亚洲丝袜制服| 午夜视频在线瓜伦| 高清av不卡| 狠狠操狠狠色综合网| 成人性生活视频免费看| 国产丝袜精品丝袜| 综合激情成人伊人| 中文字幕久久综合| 青青青青在线| 亚洲人成精品久久久久| 日本免费在线视频观看| 欧洲不卡视频| 亚洲男人的天堂在线aⅴ视频| 一区二区不卡在线视频 午夜欧美不卡'| 无码精品视频一区二区三区| 成人v精品蜜桃久久一区| 国产乱码一区| 亚洲人午夜射精精品日韩| 波多野结衣在线一区| 精品久久久三级| 欧美在线一卡| 久久精品视频网| 日韩av电影免费在线观看| 国产私拍精品| 国产精品视频免费看| 在线免费观看一区二区三区| 国产cdts系列另类在线观看| 亚洲欧洲一区二区三区| 成人久久久久爱| 在线国产99| 中文字幕日本在线观看| 国产精品美女久久久久aⅴ| 亚洲日本japanese丝袜| 黄色一级大片在线免费看产| 亚洲欧美日韩国产一区二区三区| 久久www视频| 成人av影院在线观看| 亚洲va欧美va天堂v国产综合| 久色视频在线播放| 美女福利一区二区| 欧美日韩精品欧美日韩精品| 国产毛片久久久久久| 粉嫩久久久久久久极品| 亚洲欧美变态国产另类| 日韩在线视频免费看| 亚洲网色网站| 2019中文字幕在线观看| 亚洲自拍偷拍另类| 成人免费视频国产在线观看| 欧美最大成人综合网| 岛国成人毛片| 欧美小视频在线观看| 欧美成人福利在线观看| 91成人噜噜噜在线播放| 亚洲色图色老头| 国产av 一区二区三区| 午夜亚洲性色福利视频| 91久久精品国产91性色| 香蕉视频网站在线| 成人免费一区二区三区视频 | 欧美亚洲图片小说| 被黑人猛躁10次高潮视频| 牲欧美videos精品| 久久在线免费观看视频| av一级在线观看| 国产传媒一区在线| 色综合666| 日本动漫同人动漫在线观看| 欧美亚洲免费在线一区| 欧美夫妇交换xxx| 国产精品成人一区二区不卡| 欧美在线视频一区| 亚洲卡一卡二卡三| 亚洲欧洲av在线| wwwwxxxx日韩| 综合色就爱涩涩涩综合婷婷| 欧美激情第6页| 亚洲综合一区中| 久久综合九色欧美综合狠狠| 欧美国产视频一区| 色婷婷成人网| 在线播放精品一区二区三区| 久久综合综合久久| 精品亚洲国产成人av制服丝袜 | 肉丝一区二区| 亚洲一区免费观看| 国内av一区二区| 精品国精品国产自在久国产应用| 97视频在线观看视频免费视频| 亚洲av无码片一区二区三区| 国产精品久久久久久久浪潮网站 | 欧美日韩电影免费看| 精品免费国产一区二区三区四区| 亚洲精品久久久久久国| 日本不卡一区二区三区高清视频| 欧美裸体网站| 综合久久2023| 亚洲毛片在线看| 91在线看视频| 不卡的av在线| 青青青在线视频播放| av一级亚洲| 久久久免费观看| 国产 欧美 自拍| 亚洲国产精品人人做人人爽| 国产伦理在线观看| 综合色一区二区| 亚洲自拍小视频| 在线免费观看的av| 日韩午夜激情av| 久久久久久久久久综合| 国产成人精品免费看| 成人一级生活片| 精品国产一区二区三区成人影院| 久久久久久69| 亚洲三级黄色片| 色哟哟在线观看一区二区三区| 草草影院第一页| 日韩国产欧美在线视频| 日韩精品一区二区三区四区五区| 欧美精选视频一区二区| 中文字幕日韩精品在线| 91一区二区视频| 悠悠色在线精品| 国产高清成人久久| 久久狠狠婷婷| 亚洲一区二区在线看| 国产电影一区| 国内精品小视频| 精品久久av| 欧美美女bb生活片| 草视频在线观看| 99久久精品情趣| www.xxx亚洲| 97精品视频| 国产一区二区在线电影| 风间由美久久久| 国产精品蜜芽在线观看| 精品偷拍一区二区三区在线看 | 国产精品亚洲综合久久| 欧美一区二区三区在线播放 | 亚洲精品在线免费看| vam成人资源在线观看| 国外成人在线视频| 搞黄视频免费在线观看| 欧美一级精品大片| 国产精品免费精品一区| 中文字幕一区二区三区视频| 免费不卡的av| 人人爽香蕉精品| www.日本少妇| 欧美色就是色| 黑人另类av| 欧美aaaaaa| 91po在线观看91精品国产性色| 91se在线| 亚洲精品电影在线| 97精品久久人人爽人人爽| 午夜日韩在线观看| 亚洲色图27p| 91小视频免费观看| 三级网站免费看| 日韩av二区在线播放| 国产在线播放观看| 99成人超碰| 欧美日韩一区二区视频在线观看 | 日产国产欧美视频一区精品| 蜜桃视频一区二区在线观看| 久久福利影院| 久久久久久艹| 嗯用力啊快一点好舒服小柔久久| 国产精品揄拍500视频| 亚洲精品福利电影| 久久久久久国产精品三级玉女聊斋| avtt在线播放| 亚洲日本中文字幕免费在线不卡| 亚洲精品一级片| 日韩午夜中文字幕| 91影院在线播放| 欧美三级三级三级爽爽爽| 自拍偷拍欧美亚洲| 亚洲福中文字幕伊人影院| 国产极品美女在线| 国产精品久久一卡二卡| 老牛影视av老牛影视av| 99久久久久久| 国产 xxxx| 成人短视频下载 | 久久免费视频一区| 日本一卡二卡在线| 成人一道本在线| 色诱av手机版| 丁香婷婷深情五月亚洲| 青娱乐国产精品视频| 国产综合色在线| 美女被艹视频网站| 国产麻豆午夜三级精品| 亚洲热在线视频| 国产精品456| 91精品国产高清91久久久久久| 国产精品亚洲综合一区在线观看| 91 视频免费观看| 老司机免费视频一区二区| 五月婷婷丁香色| 久久精品国产精品亚洲红杏| 亚洲一级片网站| 精品一区二区三区在线播放视频| 九九精品久久久| 精品在线视频一区| 无码人妻一区二区三区在线视频| 国产精品一区在线| 久久人妻少妇嫩草av蜜桃| 成人免费视频视频在线观看免费 | 国产精品系列在线| 你懂得在线观看| 亚洲免费观看高清完整版在线观看 | 国产成人在线视频| 成人国产精品入口免费视频| 国产精自产拍久久久久久蜜| 999精品嫩草久久久久久99| 成人高h视频在线| 久久久久亚洲精品中文字幕| 国产99午夜精品一区二区三区| 天堂99x99es久久精品免费| 麻豆久久久9性大片| 欧美日韩在线播放视频| 久久免费看毛片| 国内自拍一区| aaaaaa亚洲| 久久99久国产精品黄毛片色诱| 欧美色图校园春色| youjizz国产精品| 人妻少妇无码精品视频区| 国产精品乱码人人做人人爱| 校园春色 亚洲| 日韩欧美在线第一页| 中国a一片一级一片| 欧美一区二区三区色| 亚洲三区在线播放| 精品久久久av| 九色porny丨入口在线| 国产精品免费久久久久影院| 日韩中文一区二区| 欧美日韩精品久久久免费观看| 第四色成人网| 97超碰在线人人| 奇米影视在线99精品| 国产伦理在线观看| 国产欧美va欧美不卡在线| 免费看一级一片| 在线观看日韩国产| 黑人精品一区二区三区| 亚洲视频在线免费看| 欧美人体视频xxxxx| 国产精品91一区| 爱爱精品视频| 亚洲一区二区三区在线观看视频| 亚洲少妇诱惑| 中文写幕一区二区三区免费观成熟| 久久久久久久久久电影| 麻豆91精品91久久久| 欧美视频中文字幕| 香蕉视频黄在线观看| 欧美精品少妇videofree| 日韩新的三级电影| 国产精品日本一区二区| 久久免费av| 成人小视频在线看| 成人国产精品免费网站| 日韩高清dvd碟片| 欧美午夜电影在线播放| 日韩av成人| 国模精品系列视频| 成人亚洲精品| 天堂资源在线亚洲视频| 国产一区二区你懂的| 手机看片国产精品| 亚洲图片欧美激情| 中文字幕一区二区三区四区视频| 日韩精品在线视频观看| 成人性生交大片免费看网站| 91精品在线观看视频| 俺要去色综合狠狠| 国语对白做受xxxxx在线中国| 成人激情免费网站| 91视频免费在线看| 91精品国产欧美一区二区| 91大神在线网站| 国产精品欧美一区二区三区奶水| 亚洲自拍都市欧美小说| 日本免费黄视频| 97久久精品人人澡人人爽| 国产真实乱偷精品视频| 日韩精品一区在线观看| 怡红院av在线| 99re在线视频观看| 欧美激情视频一区二区三区在线播放| 国产乱女淫av麻豆国产| 中文字幕一区二区三| 亚洲一级视频在线观看| 在线观看日韩专区| 久久青草免费| 中文字幕日韩一区二区三区不卡| 麻豆精品视频在线| 影音先锋男人看片资源| 欧美日韩成人综合| 麻豆传媒视频在线观看免费| 成人免费视频a| 亚洲欧美偷拍自拍| 国产一级片中文字幕| 一区二区三区欧美日| 亚洲精品久久久久久久久久 | 成人av在线影院| 日本天堂在线视频| 精品一区二区电影| 欧美福利在线播放| 亚洲一区二区不卡视频| 国产资源精品在线观看| 免费一级片视频| 日韩av中文在线| 99re66热这里只有精品4| 日韩欧美一区二区三区四区五区| 蜜桃av噜噜一区二区三区小说| 国产精品综合激情| 欧美一区二区三区在线电影 | 红桃av永久久久| 内衣办公室在线| 国产视频福利一区| 欧美三级小说| 巨胸大乳www视频免费观看| 欧美亚洲国产一区二区三区va| 欧美r级在线| 粉嫩av四季av绯色av第一区| 天堂va蜜桃一区二区三区漫画版| 你懂得视频在线观看| 日韩美女在线视频| 日韩精品极品| 中文字幕一区二区三区在线乱码| 国v精品久久久网| 91黑人精品一区二区三区| 久久精品视频在线观看| 精品少妇3p| 欧美日韩中文不卡| 亚洲va国产天堂va久久en| 成人在线免费观看| 国产 高清 精品 在线 a| 日日噜噜夜夜狠狠视频欧美人| 国产黄色的视频| 亚洲视频视频在线| 免费一级欧美在线大片| 亚洲爆乳无码专区| 亚洲综合一二三区| 成人欧美亚洲| 国产精品裸体一区二区三区| 青青草伊人久久| 日韩欧美三级在线观看| 日韩少妇与小伙激情| 亚洲影院天堂中文av色| 原创真实夫妻啪啪av| 欧美在线不卡一区| 国产美女精品写真福利视频|