Spaces:
Sleeping
Sleeping
File size: 969 Bytes
2887ce2 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
use rusqlite::Connection;
use std::env;
use std::path::PathBuf;
fn main() {
let home_dir = env::var("HOME")
.or_else(|_| env::var("USERPROFILE"))
.unwrap();
let db_path = if cfg!(target_os = "windows") {
PathBuf::from(home_dir).join(r"AppData\Roaming\Cursor\User\globalStorage\state.vscdb")
} else {
PathBuf::from(home_dir)
.join("Library/Application Support/Cursor/User/globalStorage/state.vscdb")
};
match Connection::open(&db_path) {
Ok(conn) => {
match conn.query_row(
"SELECT value FROM ItemTable WHERE key = 'cursorAuth/accessToken'",
[],
|row| row.get::<_, String>(0),
) {
Ok(token) => println!("访问令牌: {}", token.trim()),
Err(err) => eprintln!("获取令牌时出错: {}", err),
}
}
Err(err) => eprintln!("无法打开数据库: {}", err),
}
}
|