getResourceByPath
根据路径获取资源。
const resource = await drupal.getResourceByPath<T = JsonApiResource>( path, options?: { params, withAuth, deserialize, locale, defaultLocale, isVersionable, }): Promise<T>
path: 字符串
- 必需
- 资源路径。例如:
/blog/slug-for-article
。
options
- 可选
params: JsonApiParams
: JSON:API 参数,例如filter
、fields
、include
或sort
。withAuth: 布尔值 | DrupalClientAuth
:- 设置要使用的身份验证方法。请参阅 身份验证文档。
- 设置为
true
以使用客户端上配置的身份验证方法。
deserialize: boolean
:设置为 false 以返回原始 JSON:API 响应。locale: string
:获取资源的语言环境。defaultLocale: string
:网站的默认语言环境。isVersionable: boolean
:如果要获取资源的修订版本,则设置为 true。对于节点实体类型,自动设置为 true。
注释
- 需要 Decoupled Router 模块。
示例
- 按路径获取页面。
const node = await drupal.getResourceByPath("/blog/slug-for-article")
- 获取原始 JSON:API 响应。
const { data, meta, links } = await drupal.getResourceByPath( "/blog/slug-for-article", { deserialize: false, })
TypeScript
- 对于节点实体类型,使用
DrupalNode
。
import { DrupalNode } from "next-drupal"
const node = await drupal.getResourceByPath<DrupalNode>( "/blog/slug-for-article")
有关更多内置类型,请参阅 TypeScript 文档。