在ProcessWire ServicesPages API中获取完整文件路径
问题描述:
我目前正在使用ProcessWire构建应用程序。我正在使用ServicePages module将我的数据公开为类似REST的API。在ProcessWire ServicesPages API中获取完整文件路径
然而,所有的文件似乎像这样输出:
reel_poster: {
basename: "breakdown-2015-poster.jpg",
description: "",
tags: "",
formatted: false,
modified: 1468541707,
created: 1468541707
}
如何获取该文件的实际路径/ URL引用?我需要在JS应用中获取路径,所以我不能使用PHP API。
我也发布了this on their forums,但它似乎没有太多的活动。
答
所以,如果我读this forum post correctly,创建URL的唯一方法是通过手动组装它。我们需要三件事情要做到这一点:
- 文件资产基本路径。
- 该字段附加到的页面的ID。
- 图像名称。
我们知道,对文件资源的基本路径是/site/assets/files/
。然后,我们可以做到这一点,因为我们从API一个page
对象:
var basePath = '/site/assets/files/';
var imagePath = basePath + page.id + '/' + page.image_field.basename;
这应该工作。我认为。是的。这是测试和工作。
这似乎是一个已知问题:https://processwire.com/talk/topic/1654-pages-web-service-servicepages/?page=3#comment-48900。注释是从2013年开始,虽然。 *叹* –
这又是,在2015年:https://processwire.com/talk/topic/1654-pages-web-service-servicepages/?page=4#comment-100002。然而,所提出的解决方案是在PHP中,这不是我的选择。 :/ –