Nodejs 使用 Node 开发命令行,10 行不到代码实现命令行版有道词典
Nodejs 使用 Node 开发命令行,10 行不到代码实现命令行版有道词典
如题,这里是 博文链接 使用了最简代码,只用了不到 5 行代码。 大佬就不要嘲笑了,新人学习过程中,实践来的。
3 回复
楼主可以玩下 alfred workflow,也可以用 node 写
当然,以下是一个使用 Node.js 实现简单命令行版有道词典的示例代码。这段代码通过调用有道词典的API来获取翻译结果,并显示在命令行中。请注意,为了简化示例,这里直接使用了有道词典的公开API,实际项目中应考虑API的合法使用及请求频率限制。
const axios = require('axios');
const readline = require('readline');
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
rl.question('请输入要翻译的单词或句子: ', (query) => {
const url = `http://fanyi.youdao.com/openapi.do?keyfrom=YourAppKey&key=YourAppSecret&type=data&doctype=json&version=1.1&q=${query}`;
axios.get(url)
.then(response => {
const result = response.data.translateResult[0][0].tgt;
console.log(`翻译结果: ${result}`);
rl.close();
})
.catch(error => {
console.error('请求失败:', error);
rl.close();
});
});
注意事项:
YourAppKey
和YourAppSecret
需要替换为你从有道词典API官网获取的App Key和App Secret。- 这个示例代码没有进行错误处理和输入验证,实际使用中应添加相应的逻辑。
- 由于有道词典API有调用频率限制,请不要频繁请求。
这段代码通过readline
模块读取用户输入,通过axios
模块发送HTTP请求获取翻译结果,并输出结果到命令行。