提交qiming-mcp-proxy
This commit is contained in:
@@ -0,0 +1,79 @@
|
||||
import { join, basename } from "https://deno.land/std/path/mod.ts";
|
||||
import { readLines } from "https://deno.land/std/io/mod.ts";
|
||||
import { format } from "https://deno.land/std/datetime/mod.ts";
|
||||
|
||||
// 使用Deno标准库处理路径和文件
|
||||
async function processPath(path) {
|
||||
console.log(`处理路径: ${path}`);
|
||||
|
||||
// 使用path模块处理路径
|
||||
const fileName = basename(path);
|
||||
console.log(`文件名: ${fileName}`);
|
||||
|
||||
const fullPath = join("/tmp", fileName);
|
||||
console.log(`完整路径: ${fullPath}`);
|
||||
|
||||
// 获取当前时间并格式化
|
||||
const now = new Date();
|
||||
const formattedDate = format(now, "yyyy-MM-dd HH:mm:ss");
|
||||
console.log(`当前时间: ${formattedDate}`);
|
||||
|
||||
return {
|
||||
originalPath: path,
|
||||
fileName: fileName,
|
||||
fullPath: fullPath,
|
||||
timestamp: formattedDate
|
||||
};
|
||||
}
|
||||
|
||||
// 模拟读取文件内容
|
||||
async function simulateFileReading() {
|
||||
const text = `这是第一行
|
||||
这是第二行
|
||||
这是第三行
|
||||
这是最后一行`;
|
||||
|
||||
// 使用TextEncoder和StringReader代替Deno.Buffer
|
||||
const encoder = new TextEncoder();
|
||||
const decoder = new TextDecoder();
|
||||
const data = encoder.encode(text);
|
||||
|
||||
// 创建一个可读流
|
||||
const stream = new ReadableStream({
|
||||
start(controller) {
|
||||
controller.enqueue(data);
|
||||
controller.close();
|
||||
}
|
||||
});
|
||||
|
||||
// 将流转换为Reader
|
||||
const reader = stream.getReader();
|
||||
|
||||
console.log("开始读取文件内容:");
|
||||
|
||||
// 手动处理文本行
|
||||
const lines = text.split('\n');
|
||||
for (let i = 0; i < lines.length; i++) {
|
||||
console.log(`第${i+1}行: ${lines[i]}`);
|
||||
}
|
||||
|
||||
return lines;
|
||||
}
|
||||
|
||||
export default async function handler(input) {
|
||||
console.log("开始处理");
|
||||
|
||||
// 处理路径
|
||||
const path = input.path || "example.txt";
|
||||
const pathInfo = await processPath(path);
|
||||
|
||||
// 模拟读取文件
|
||||
const fileLines = await simulateFileReading();
|
||||
|
||||
return {
|
||||
message: '处理完成',
|
||||
pathInfo: pathInfo,
|
||||
fileContent: fileLines,
|
||||
linesCount: fileLines.length
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user