首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何维护API版本?

如何维护API版本?
EN

Drupal用户
提问于 2020-06-17 10:36:05
回答 1查看 75关注 0票数 1

我的Drupal 8实例中有不同的REST端点,其中一些是从REST视图中公开的,另一些是自定义控制器。我有一个情况,我想维护我的终结点版本控制。

我已经替换了新版本中的一些字段,依赖旧API版本的用户不能受到更改的影响。

对于控制器,如何管理不同API版本的不同输出?

另外,在REST视图中,URL是直接公开的,如何将新数据添加到其中?

例如,/rest/分类法列表端点提供了一组特定的术语作为JSON输出。在新的API版本中,我必须添加/删除/替换同一个词汇表中的一个术语。

EN

回答 1

Drupal用户

发布于 2020-06-17 10:58:23

API版本的一种方法是向URL添加版本号。因此,例如,视图REST显示URL /rest/taxonomy-list将变成/rest/v1/taxonomy-list/rest/v2/taxonomy-list

您可以通过复制现有视图显示来调整新的REST显示中的字段和新URL。

对于自定义REST插件,可以扩展现有的RestResource并为其提供一个新的URL,例如:

代码语言:javascript
运行
复制
use Drupal\my_module\MyRestResource;

/**
 * Sample Rest Resource
 *
 * @RestResource(
 *   id = “my_rest_resource_v2”,
 *   label = @Translation(“My Rest Resource (v2)“),
 *   uri_paths = {
 *     "canonical" = "/api/rest/v2/endpoint”
 *   }
 * )
 */
class MyRestResourceV2 extends MyRestResource {

  // Extend and override functions here 

}
票数 2
EN
页面原文内容由Drupal提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://drupal.stackexchange.com/questions/294610

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档