Thingworx 使用REST API获取JSON数据
版本:7.4.1
1、URL规则
http://localhost/Thingworx/Things/[Things名称]/Services/[Service名称]?method=POST&Accept=application/json
2、返回值
下面是一个返回值类型为STRING,值为“HelloWorld”的返回值格式:
{"dataShape":{"fieldDefinitions":{"result":{"name":"result","description":"","baseType":"STRING","ordinal":0,"aspects":{}}}},"rows":[{"result":"HelloWorld"}]}
首先是DataShape,定义了JSON数据里的字段信息(字段名称,字段类别,字段长度等),rows里是具体的数据。
其他具体情况根据Thingworx的Service而定。
3、其他应用访问
当直接输入REST的URL,那么Thingworx会弹出一个登录提示框,验证完毕后才能显示相应的json数据。
如果是第三方应用访问,如$.get(url,function(data,status){}),那么需要注意以下几点:
(1)Thingworx开启REST访问
具体操作是:
勾选成下图所示。
如果保存后不生效,在上图所示界面中点击Restart按钮
(2)设置appKey
名称不一定是appKey,但是url最后需要加上appKey=[上图的keyId]
最终的URL是:http://localhost/Thingworx/Things/[Things名称]/Services/[Service名称]?method=POST&Accept=application/json&appKey=[上图的keyId]
(3)同域访问
还有一点要注意的,默认情况下,第三方应用需要和Thingworx同一域下,就是Thingworx在10.10.10.1上,第三方应用也必须是这个IP,否则会在调用url时报HTTP安全错误,但可以通过修改Tomcat配置文件允许访问。