在Vantiq平台中,我们可以通过SELECT来对外部的REST API进行访问。在SELECT访问外部数据时,我们有时候可以通过asFullResponse标识来获取更多的REST请求信息。这些信息在某些情况下非常有用。在我们Vantiq平台的tutorials其中的一个例子sources就是访问外部的一个天气的source。

我们首先可以通过平台提供的import菜单,把项目导入到Vantiq平台中:

一旦导入项目,我们可以看到如下的内容:

为了使得这个weather的source可以正常工作,我们必须在REST API接口的网站申请自己的开发者appID。

我们同时也可以定义一个如下的procedure来读取source里的数据:

PROCEDURE read_weather()var data = SELECT FROM SOURCE weather

运行上面的代码,我们可以看到如下的结果:

[{"coord": {"lon": -122.12,"lat": 37.89},"weather": [{"id": 800,"main": "Clear","description": "clear sky","icon": "01n"}],"base": "stations","main": {"temp": 281.86,"pressure": 1026,"humidity": 75,"temp_min": 279.15,"temp_max": 284.26},"visibility": 16093,"wind": {"speed": 1.5,"deg": 120},"clouds": {"all": 1},"dt": 1554902663,"sys": {"type": 1,"id": 3581,"message": 0.0109,"country": "US","sunrise": 1554903617,"sunset": 1554950332},"id": 5364226,"name": "Lafayette","cod": 200}
]

显然,这里返回的结果是我们正常的所需要的数据。但是,如果我们把上面的procedure改为:

PROCEDURE read_weather()var data = SELECT FROM SOURCE weather WITH asFullResponse = true

在这里,我们在请求时加入了asFullResponse = true,我们再看看我们返回的信息:

[{"status": 200,"headers": {"Server": "openresty","Date": "Wed, 10 Apr 2019 13:30:17 GMT","Content-Type": "application/json; charset=utf-8","Content-Length": "448","Connection": "keep-alive","X-Cache-Key": "/data/2.5/weather?APPID=8f0e5fcebf2aa8ae2b3fcb3a9e9a499b&id=5364226","Access-Control-Allow-Origin": "*","Access-Control-Allow-Credentials": "true","Access-Control-Allow-Methods": "GET, POST"},"cookies": [],"body": {"coord": {"lon": -122.12,"lat": 37.89},"weather": [{"id": 800,"main": "Clear","description": "clear sky","icon": "01n"}],"base": "stations","main": {"temp": 281.86,"pressure": 1026,"humidity": 75,"temp_min": 279.15,"temp_max": 284.26},"visibility": 16093,"wind": {"speed": 1.5,"deg": 120},"clouds": {"all": 1},"dt": 1554902663,"sys": {"type": 1,"id": 3581,"message": 0.0109,"country": "US","sunrise": 1554903617,"sunset": 1554950332},"id": 5364226,"name": "Lafayette","cod": 200}}
]

我们比较一下上面返回的两种数据结果。可以看出来,加入asFullResponse = true后,多了:

  • status  HTTP调用返回的结果
  • headers HTTP请求返回的headers。如果header有多个值,将以数组的形式返回
  • cookies 返回的cookies,以数组的形式返回
  • body 返回的body (正常的没有加上asFullResponse返回的结果)

在Vantiq平台里利用asFullResponse标识使SELECT返回更多的信息相关推荐

  1. Vantiq平台的优势

    Vantiq平台是什么? VANTIQ是一个平台即服务(PaaS)体系,用于开发.部署和运行高性能的分布式实时业务应用.Vantiq可以帮助公司轻松实现业务数字化.使用Vantiq构建的应用参与各种事 ...

  2. 实战 | 利用Delta Lake使Spark SQL支持跨表CRUD操作

    转载自  实战 | 利用Delta Lake使Spark SQL支持跨表CRUD操作 供稿 | eBay ADI-Carmel Team 作者 | 金澜涛 编辑 | 顾欣怡 本文7309字,预计阅读时 ...

  3. 攻击者对 Exploit-DB平台的利用分析

    引言 **观点 4:截至 2020 年 11 月,NVD 平台公布的物联网 相关漏洞数量已达 1541 个,有望创历史新高. 总体而言,相关漏洞具有攻击复杂度低.危害评级高的特点.从我们观察到的漏洞利 ...

  4. 如何在阿里云物联网平台上利用已有的 IoT Studio项目模板创建项目

    目录 前言 一.在阿里云找到已有的IoT Studio公开项目模板 二.选择公开项目模板 三.其他选择 结语 前言 前面的文章里,我们介绍了如何在阿里云物联网平台上添加LoRa节点设备,并让LoRa节 ...

  5. Go web 开发数据库管理平台,利用远程过程调用(RPC)实现对MySQL数据库的管理和使用

    Go web 开发数据库管理平台,利用远程过程调用(RPC)实现对MySQL数据库的管理和使用 前言 做DBA,最基本的工作就是需要管理公司的数据库系统.工作中,常常需要维护的数据库数量是非常多的.小 ...

  6. 如何利用数字创新使您的企业脱颖而出

    如何利用数字创新使您的企业脱颖而出 数字创新并非易事,但它会对您的企业内部和外部产生积极影响. 然而,数字化的方式如此之多,企业很难决定将注意力集中在哪里. 本文的目的是概述数字创新的战略方法.这种方 ...

  7. SAP云平台里Run index.html和Run as SAP Fiori Launchpad的区别

    SAP云平台里选中一个UI5应用,有这么多运行方式可以选择,区别是什么? 做个实验:在index.html里画一个Jerry的text field: 然后新建一个xml view,名称为Master. ...

  8. android代码查找图像,Android平台上利用opencv进行图像的边沿检测

    原标题:Android平台上利用opencv进行图像的边沿检测 近开始接触opencv for Android,从网上down了图像的边沿检测的代码. 测试图片: 在Android2.3.1模拟器上跑 ...

  9. 对话即平台:利用人工智能以及云平台打造你的智能机器人

    内容来源:2017年3月11日,微软中国技术顾问佘泽鹏在"HTML5梦工场 & 微软开发者沙龙第02期--北京"进行<对话即平台:利用人工智能以及云平台打造你的智能机 ...

  10. php 拼团_详解在微信公众平台里实现微信拼团功能的步骤

    微信拼团是应用于微信公众号的微商城系统,商家只需要一个网站后台去接入自己的服务号,上传自己的产品或服务,就可以使用它的功能了,下面小编就为大家介绍在微信公众平台里实现微信拼团功能的方法,来看看吧 微信 ...

最新文章

  1. Python开发【第十二篇】:DOM
  2. 2003DC 升级到2008R2 DC实验
  3. 【poj2187】 Beauty Contest
  4. MAC下homebre安装mysql
  5. delphi valuelisteditor控件的使用
  6. 超过一天的文件_一键合并多个excel文件至同一工作表!
  7. 安装Conda并在Conda下安装jupyter notebook
  8. 技术动态 | 清华大学开源OpenKE:知识表示学习平台
  9. C# LINQ to XML
  10. 服务器***处理三则
  11. CMDB数据库设计-四种方案任你选
  12. java订餐管理系统
  13. android 简易英汉字典,英汉字典(新版)
  14. 怎么把手机便签图片上的文字转换成可以编辑的文字?
  15. 女孩子生理期最易达成的5种效果[女生必看,男生为了女朋友也要转
  16. 访问共享计算机的用户名和密码怎么设置,Win10如何设置访问共享文档要输入用户名和密码...
  17. DIST@SAU实验室学生博客名单
  18. Qt5 学习之路及嵌入式开发教程11:Qt5标准输入对话框类及QSlider控件
  19. [刷题]leetcode\704_二分查找
  20. Jenkins 构建CI/CD(一看就会)

热门文章

  1. 格式化输出错误——ValueError: cannot switch from automatic field numbering to manual field specification
  2. 转:陈春花:你懂得相信的力量吗?
  3. 沅江吴鸣油炼鸭网站建设
  4. [ Linux ] 网络切换及设置静态IP(详细图文教程)
  5. hive-学习微博日志分析
  6. 【毕业设计】java基于微信小程序高校闲置物品交易平台小程序 闲置物品交易微信小程序 闲置物品交易小程序
  7. Mac和iOS开发资源汇总—更新于2013-07-19(转自破船)
  8. oVirt4.2给虚拟机分配vGPU
  9. RIFE-实时视频插帧算法 | RIFE:Real-Time Intermediate Flow Estimation for Video Frame Interpolation
  10. java.io.EOFException: SSL peer shut down incorrectly jdk1.8不支持TSLv1.3问题解决