Nodejs 使用 Node 开发命令行,10 行不到代码实现命令行版有道词典

Nodejs 使用 Node 开发命令行,10 行不到代码实现命令行版有道词典

如题,这里是 博文链接 使用了最简代码,只用了不到 5 行代码。 大佬就不要嘲笑了,新人学习过程中,实践来的。


3 回复

楼主可以玩下 alfred workflow,也可以用 node 写


看标题还以为 10 行代码就开发了个有道词典呢,点进去看原来还是调有道词典接口啊。

当然,以下是一个使用 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();
        });
});

注意事项

  1. YourAppKeyYourAppSecret 需要替换为你从有道词典API官网获取的App Key和App Secret。
  2. 这个示例代码没有进行错误处理和输入验证,实际使用中应添加相应的逻辑。
  3. 由于有道词典API有调用频率限制,请不要频繁请求。

这段代码通过readline模块读取用户输入,通过axios模块发送HTTP请求获取翻译结果,并输出结果到命令行。

回到顶部