【问题标题】:Fiware POI add_poi web service fw_media structureFiware POI add_poi web service fw_media结构
【发布时间】:2015-11-19 13:11:58
【问题描述】:

我创建了 json 用于添加包含 fw_media 数据的新 poi,基于 example_components/fw_media.json 中的 json:

{"fw_core":
    {"location":{"wgs84":{"latitude":1,"longitude":1}},
    "categories":["Field"],
    "name":{"":"poljana 1"}},
"fw_media": {
     "entities": [
       {
         "type": "photo",
         "short_label": {
           "en": "Sunset at sea"
         },
         "caption": {
           "en": "Sunset on the Bothnian Bay, Northwest from Hailuoto summer 2013"
         },
         "description": {
           "": "Lorem ipsum dolor sit amet, consectetur adipisci elit, sed eiusmod tempor incidunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquid ex ea commodi consequat.",
           "fi": "Oli mukava retki."
         },
         "thumbnail": "http://www.example.org/sunset_on_sea_tbn.jpg",
         "url": "http://www.example.org/sunset_on_sea.jpg",
         "copyright": "Photo: Ari Okkonen"
       },
       {
         "type": "audio",
         "short_label": {
           "": "Säkkijärven polkka"
         },
         "url": "http://www.example.org/sakkijarven_polkka.mp3"
       }

     ],
"last_update": {
    "timestamp": 1390203898
}, "source": {
    "website": "http://www.cie.fi",
    "name": "CIE, University of Oulu",
    "id": "7c32c67d-cf00-4d11-9acc-2471141e03a3",
    "license": "http://www.gnu.org/licenses/gpl.html"
}
}} 

但我得到错误:

JSON does not validate. Violations:
[fw_media] The property - source - is not defined and the definition      
does not allow additional properties
POI data validation failed!

你能给我举个工作 fw_media json 的例子吗?

而且是否可以在 fw_media 中上传带有 poi 的图片?(不仅仅是图片的 url,而是整个图片)

【问题讨论】:

    标签: fiware fiware-poi


    【解决方案1】:

    已在 GitHub 的 master 分支中更正。

    感谢您的报告。

    似乎某处的旧示例具有未实现的fw_image.source 字段。只需从数据中编辑source 结构,就可以了。当然,对于一个 POI 来说,所有图像都有一个共同的来源描述是没有意义的。

    源字段可能在每个项目的基础上都可用。所以我会在下一个版本中介绍它。

    拜托,你能告诉我那个错误的海上日落在哪里,所以我可以去纠正它。更正跟踪在https://github.com/Chiru/FIWARE-POIDataProvider/issues/7 我觉得上传图片是一种Specific Enabler的东西。所以它留给社区来实施。我建议通过专门的客户端软件结合标准 POI-DP 使用一些媒体存储库。

    【讨论】:

    • 感谢您的快速回答。 fw_media json 的位置是:github.com/Chiru/FIWARE-POIDataProvider/blob/master/php/… 您还应该修改 last_update 属性的时间戳,因为错误:[fw_media.last_update.timestamp] 找到字符串值,但需要整数。正如你所说,我从 json 中删除了 source 属性,但现在它返回:500 INTERNAL SERVER ERROR Response does not contain any data.
    • 根据服务器的不同,可能是这个错误github.com/Chiru/FIWARE-POIDataProvider/issues/2。更正当前安装: 1. 从您的 POI 服务器中删除 vendor 子目录 2. 安装 justinrainbow/json-schema 的 1.4.3 版本 $ wget getcomposer.org/composer.phar $ php composer.phar require justinrainbow/json-schema:1.4 .3 $ sudo cp -r vendor /var/www/poi_dp/ (无论如何,将新的vendor 子目录安排到您删除前一个的位置。)
    • 我做到了,但它仍然是同样的错误。我查看了错误日志,我得到了这些错误: PHP Notice: Undefined variable: source_name in /var/www/poi_dp/add_poi.php on第 107 行 PHP 注意:未定义变量:/var/www/poi_dp/add_poi.php 中的 source_website PHP 注意:未定义变量:/var/www/poi_dp/add_poi.php 中的 source_license PHP 注意:未定义变量:/var/www 中的 source_id /poi_dp/add_poi.php PHP 致命错误:未捕获的异常 'MongoException' 带有消息“不允许使用零长度键,您是否使用带有双引号的 $?”在 /var/www/poi_dp/add_poi.php:143
    • 感谢您的具体报告。 1.“不允许使用零长度的键”据说是由“默认语言”的文本引起的,该文本最初被悲惨地定义为具有空字符串作为语言代码。我们试图解决这个问题。一个有效的解决方法是使用一些语言代码,例如"en",然后将其定义为默认值:'"_def": "en"'。 2.那些未定义的似乎是真正的错误。您有什么信息可以用来查找 POI-DP 的版本吗?
    • 我是在 10 月 29 日下载的。
    猜你喜欢
    • 1970-01-01
    • 2017-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多