9.3. 本地化

本教程最新版为 9.x,当前版本已放弃维护,请阅读最新版本!

本地化

这一节我们来实现接口的本地化。本地化主要的是客户端的工作,切换语言后,客户端显示不同的界面,例如下面就是微信 中文英文 语言下的界面。

file

除了界面显示之外,还有一些报错信息需要做本地化,举个例子,用户登录时,密码错误:

  • 英文客户端,提示 invalid username or password
  • 中文客户端,提示 用户名和密码错误

报错信息本地化的处理方式,一般有两种:

  • 客户端通过服务器端返回的状态码和错误码,自行翻译为错误信息;
  • 服务器端返回状态码时,返回已经格式化了的错误消息。

接下来我们会一一讲解。

1. 本地化完全交给客户端

因为我们是 RESTFul 风格的接口,返回了标准的状态码,大部分情况下,客户端可以根据状态码,以及语言设置提示给用户不同语言的报错信息。例如上面的例子,客户端调用 登录 接口时,报错信息中的 message 统一为中文,客户端根据状态...

本文章首发在 LearnKu.com 网站上。

为了保证课程的高品质,我们需要对课程进行收费。付费后 才能观看剩余内容。 购买

上一篇 下一篇
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
贡献者:2
讨论数量: 12

memory2018
正确响应,也想在 response 时加入 code 字段,应该如何修改?
3 个点赞 | 11 个回复 | 问答 | 课程版本 5.5
xuelong
trans ('auth.failed') 参数解读?
1 个点赞 | 4 个回复 | 问答 | 课程版本 5.5
阿伦
表单字段的语言没有切过来?
0 个点赞 | 5 个回复 | 问答 | 课程版本 5.5
Innocence6
接口根据客户端语言切换错误信息无效?
0 个点赞 | 3 个回复 | 问答 | 课程版本 5.5
dptms
为什么我的验证 统一都是返回的 500 呢?
0 个点赞 | 3 个回复 | 问答 | 课程版本 5.5
ATYW
如何接管 dingo API 自带中间件验证的异常本地化?
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
FM
本地化失败?
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
wonderfate
这种 iPhone 图片展示效果是怎么制作的
0 个点赞 | 1 个回复 | 分享 | 课程版本 6.x
Flourishing
老师,这个是语言包给我们提供的方法吗?
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.5
lafans
使用扩展tymon/jwt-auth如何自定义异常时候的code ?
0 个点赞 | 0 个回复 | 问答 | 课程版本 8.x
kitty
因测试数据的原因,此时执行数据回滚会报错
0 个点赞 | 0 个回复 | 问答 | 课程版本 5.8