小编Vol*_*kur的帖子

基于JAX-RS的实现中的简单REST资源版本控制?

REST资源版本控制的最佳实践是将版本信息放入HTTP请求的Accept/Content-Type标头中,使URI保持不变.

以下是用于检索系统信息的REST API示例请求/响应:

==>
GET /api/system-info HTTP/1.1
Accept: application/vnd.COMPANY.systeminfo-v1+json

<==
HTTP/1.1 200 OK
Content-Type: application/vnd.COMPANY.systeminfo-v1+json
{
  “session-count”: 19
}
Run Code Online (Sandbox Code Playgroud)

请注意,MIME类型中指定了版本.

这是版本2的另一个请求/响应:

==>
GET /api/system-info HTTP/1.1
Accept: application/vnd.COMPANY.systeminfo-v2+json

<==
HTTP/1.1 200 OK
Content-Type: application/vnd.COMPANY.systeminfo-v2+json
{
  “uptime”: 234564300,
  “session-count”: 19
}
Run Code Online (Sandbox Code Playgroud)

有关更多说明和示例,请参见http://barelyenough.org/blog/tag/rest-versioning/.

是否有可能在基于Java的JAX-RS实现中轻松实现此方法,例如Jersey或Apache CXF?

目标是让几个@Resource类具有相同的@Path值,但是根据MIME类型中指定的实际版本提供请求?

我一般都研究过JAX-RS,特别是Jersey,并没有发现它的支持.泽西岛没有机会以相同的路径注册两个资源.需要实现WebApplicationImpl类的替换以支持它.

你能提出什么建议吗?

注意:需要同时提供同一资源的多个版本.新版本可能会引入不兼容的更改.

java versioning rest jax-rs jersey

11
推荐指数
1
解决办法
9989
查看次数

沿paper.js中的bezier曲线绘制文本

是否可以使用paper.js轻松地沿贝松曲线绘制文本?

我知道可以将文本附加到线路径然后旋转它,但我特别感兴趣的是沿着曲线绘制文本.像http://www.w3.org/TR/SVG11/images/text/toap02.svg这样的东西

我明白这可以通过逐字打印文本以及应用于每个项目的相应旋转来实现,但我感兴趣的是在paper.js中更容易实现这一点.

javascript html5 canvas paperjs

5
推荐指数
2
解决办法
2219
查看次数

在进行全球化和本地化时调整文本按钮大小的最佳实践

假设我们在网页上有一个覆盖DHTML面板,其中包含顶部占据对话框整个宽度的两个按钮,如下所示:

面板

按钮1和按钮2的文本应该是本地化的.复选框组的内容是静态的,不应本地化.

不同语言的按钮文字宽度之间可能存在很大差异(与英文版相比,大约100%的额外空间).

问题是根据文本内容的长度应用哪种策略来调整Button 1和Button 2的大小:

  1. 使按钮固定宽度并使用省略号截断文本内容.
  2. 使按钮固定宽度并在后续行中包裹文本内容,使按钮的高度增加.
  3. 使按钮固定宽度,但使它们足够宽,以便在不截断或包装的情况下托管所有语言的文本.
  4. 使按钮动态调整宽度,使面板随其大小水平增长.

我倾向于根据找到的几个UI本地化最佳实践使用第三个或第四个选项:

我们仍然在讨论最佳选择的团队中进行一些辩论,听到社区有声的外部声音会很有趣.

我对此特定案例的最佳方法以及解决本地化方面的Web UI大小调整问题的一般准则感兴趣.

谢谢!

user-interface localization ellipsis web

2
推荐指数
1
解决办法
1177
查看次数