作业:多国语言翻译页面
要求:
1. 本机上安装 Docker 与 Nginx (直接用 Windows 版本或搭建 linux 虚拟机均可)
2. 用VueJS写一个翻译用的页面
3. 用 nodejs 提供后台与 http 服务
4. 通过 docker 部署到本机运行
5. 修改 nginx conf 把端口号转成 /translating, url 为 http://127.0.0.1/translating
页面功能:
1. 导入指定格式的英文 json 文件
2. 选择目标语言 (找10种语言列在下拉框)
3. 网上自己找一个免费的翻译API接口 (注意免费额度)
4. 只翻译 value 部分,key 不翻译
5. 生成翻译好的 json 文件并以目标语言的 key 命名,然后自动下载
原 json 内容举例 (translation-en_US.json)
{
"welcome": {
"agree": "Agree",
"Start": "Start",
"Name": "Name"
}
"home": {
"Movie": "Movie",
"Music": "Music",
"photo": "Photo"
},
"movie":{
"play": "Play",
"Introduction": "Introduction"
},
"lang": {
"confirm": "Are you sure to change language?",
"ok": "OK",
"cancel": "Cancel"
}
}
环境搭建
安装Docker:确保你的系统上安装了Docker,Docker可以帮助你快速搭建一个隔离的开发环境。
安装Nginx:可以通过Linux虚拟机安装Nginx,或者使用Docker容器运行Nginx。
前端开发(VueJS)
创建Vue项目:使用Vue CLI创建一个新的VueJS项目。
设计页面:设计一个包含文件上传、下拉选择语言、翻译按钮和下载翻译文件的页面。
实现功能:
实现文件上传功能,允许用户导入英文JSON文件。
实现下拉框,列出10种目标语言供用户选择。
后端开发(NodeJS)
创建Node.js服务:使用Express框架创建一个简单的HTTP服务。
处理文件上传:编写API接口以处理前端上传的JSON文件。
调用翻译API:选择并集成一个免费的翻译API服务,编写逻辑以翻译JSON文件中的value字段。
文件下载:实现逻辑生成翻译后的JSON文件,并提供下载链接。
Docker部署
编写Dockerfile:为你的Node.js应用编写Dockerfile,以便使用Docker部署。
构建镜像:运行docker build命令构建Docker镜像。
运行容器:使用docker run命令启动容器,确保映射到本机的适当端口。
Nginx配置
修改Nginx配置:编辑Nginx的配置文件,设置一个新的location /translating,代理到你的Node.js服务运行的端口。
重启Nginx:保存配置后,重启Nginx以应用更改。
注意事项
确保选择的翻译API有足够高的免费额度,以满足你的翻译需求。
考虑到JSON文件结构可能存在嵌套,编写代码时需要递归地遍历和翻译每个value。
在实现下载功能时,可以使用Node.js的fs模块生成文件,并使用res.attachment方法来提示浏览器下载。
测试整个流程,确保从文件上传到翻译再到下载的每个环节都能正常工作。
技术栈
前端:VueJS, HTML, CSS, JavaScript
后端:NodeJS, Express
容器化:Docker
反向代理:Nginx
附加建议
可以考虑使用Vue CLI 3+和VueX进行状态管理,特别是如果你的应用状态比较复杂。
使用Axios库来处理前端和后端的HTTP请求。
对于Docker和Nginx的配置,确保熟悉Dockerfile编写和Nginx的反向代理配置。
考虑到项目的可维护性,保持代码的模块化和清晰的结构。
鄂ICP备2023011697号-1 | Powered By 91代做