我正在尝试将Drupal设置为无头CMS,使用JSONAPI向Angular应用提供数据。我能够从我的GET请求中获取响应对象,但响应数据不包括任何参考字段类型(例如图像或标签)。相反,它返回一个包含引用字段类型的关系对象。
示例响应对象:
"data": {
"type": "node--release",
"id": "21bff999-241d-4807-bd00-4af7f5a767ff",
"attributes": {
"nid": 11,
"uuid": "21bff999-241d-4807-bd00-4af7f5a767ff",
"vid": 11,
"title": "Example title",
"created": 1506621775,
"changed": 1506621912,
"revision_timestamp": 1506621912,
"revision_log": null,
"path": null,
"field_artist": "Band name",
"field_description": {
"value": "<p>Album description</p>\r\n",
"format": "basic_html"
},
"field_title": "Album name",
},
"relationships": {
"field_image_large": {
"data": {
"type": "file--file",
"id": "83d45147-1339-45a0-ae8e-fc662575d77b",
},
"links": {
"self": "http://localhost/error-records/jsonapi/node/release/21bff999-241d-4807-bd00-4af7f5a767ff/relationships/field_image_large",
"related": "http://localhost/error-records/jsonapi/node/release/21bff999-241d-4807-bd00-4af7f5a767ff/field_image_large"
}
},
},
}
我想显示上传到“field_image_large”的图像,但没有链接(既不是自我也不相关)直接指向图像的存储位置。此外,当我对其中任何一个进行API调用时,返回的结果不会提供指向图像存储位置的链接。
答案 0 :(得分:1)
我不知道2017年的情况如何。但是现在你可以做
GET /jsonapi/node/release/{resourceID}?include=field_image_large
在included[0].links
中,您会找到一个图像路径。
顺便说一下,通过一堆模块,您甚至可以获得响应图像。其中之一是Consumer Image Styles。您可以在上述链接中找到有关它的更多信息。