在Vantiq平台里利用asFullResponse标识使SELECT返回更多的信息
在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返回更多的信息相关推荐
- Vantiq平台的优势
Vantiq平台是什么? VANTIQ是一个平台即服务(PaaS)体系,用于开发.部署和运行高性能的分布式实时业务应用.Vantiq可以帮助公司轻松实现业务数字化.使用Vantiq构建的应用参与各种事 ...
- 实战 | 利用Delta Lake使Spark SQL支持跨表CRUD操作
转载自 实战 | 利用Delta Lake使Spark SQL支持跨表CRUD操作 供稿 | eBay ADI-Carmel Team 作者 | 金澜涛 编辑 | 顾欣怡 本文7309字,预计阅读时 ...
- 攻击者对 Exploit-DB平台的利用分析
引言 **观点 4:截至 2020 年 11 月,NVD 平台公布的物联网 相关漏洞数量已达 1541 个,有望创历史新高. 总体而言,相关漏洞具有攻击复杂度低.危害评级高的特点.从我们观察到的漏洞利 ...
- 如何在阿里云物联网平台上利用已有的 IoT Studio项目模板创建项目
目录 前言 一.在阿里云找到已有的IoT Studio公开项目模板 二.选择公开项目模板 三.其他选择 结语 前言 前面的文章里,我们介绍了如何在阿里云物联网平台上添加LoRa节点设备,并让LoRa节 ...
- Go web 开发数据库管理平台,利用远程过程调用(RPC)实现对MySQL数据库的管理和使用
Go web 开发数据库管理平台,利用远程过程调用(RPC)实现对MySQL数据库的管理和使用 前言 做DBA,最基本的工作就是需要管理公司的数据库系统.工作中,常常需要维护的数据库数量是非常多的.小 ...
- 如何利用数字创新使您的企业脱颖而出
如何利用数字创新使您的企业脱颖而出 数字创新并非易事,但它会对您的企业内部和外部产生积极影响. 然而,数字化的方式如此之多,企业很难决定将注意力集中在哪里. 本文的目的是概述数字创新的战略方法.这种方 ...
- SAP云平台里Run index.html和Run as SAP Fiori Launchpad的区别
SAP云平台里选中一个UI5应用,有这么多运行方式可以选择,区别是什么? 做个实验:在index.html里画一个Jerry的text field: 然后新建一个xml view,名称为Master. ...
- android代码查找图像,Android平台上利用opencv进行图像的边沿检测
原标题:Android平台上利用opencv进行图像的边沿检测 近开始接触opencv for Android,从网上down了图像的边沿检测的代码. 测试图片: 在Android2.3.1模拟器上跑 ...
- 对话即平台:利用人工智能以及云平台打造你的智能机器人
内容来源:2017年3月11日,微软中国技术顾问佘泽鹏在"HTML5梦工场 & 微软开发者沙龙第02期--北京"进行<对话即平台:利用人工智能以及云平台打造你的智能机 ...
- php 拼团_详解在微信公众平台里实现微信拼团功能的步骤
微信拼团是应用于微信公众号的微商城系统,商家只需要一个网站后台去接入自己的服务号,上传自己的产品或服务,就可以使用它的功能了,下面小编就为大家介绍在微信公众平台里实现微信拼团功能的方法,来看看吧 微信 ...
最新文章
- Python开发【第十二篇】:DOM
- 2003DC 升级到2008R2 DC实验
- 【poj2187】 Beauty Contest
- MAC下homebre安装mysql
- delphi valuelisteditor控件的使用
- 超过一天的文件_一键合并多个excel文件至同一工作表!
- 安装Conda并在Conda下安装jupyter notebook
- 技术动态 | 清华大学开源OpenKE:知识表示学习平台
- C# LINQ to XML
- 服务器***处理三则
- CMDB数据库设计-四种方案任你选
- java订餐管理系统
- android 简易英汉字典,英汉字典(新版)
- 怎么把手机便签图片上的文字转换成可以编辑的文字?
- 女孩子生理期最易达成的5种效果[女生必看,男生为了女朋友也要转
- 访问共享计算机的用户名和密码怎么设置,Win10如何设置访问共享文档要输入用户名和密码...
- DIST@SAU实验室学生博客名单
- Qt5 学习之路及嵌入式开发教程11:Qt5标准输入对话框类及QSlider控件
- [刷题]leetcode\704_二分查找
- Jenkins 构建CI/CD(一看就会)
热门文章
- 格式化输出错误——ValueError: cannot switch from automatic field numbering to manual field specification
- 转:陈春花:你懂得相信的力量吗?
- 沅江吴鸣油炼鸭网站建设
- [ Linux ] 网络切换及设置静态IP(详细图文教程)
- hive-学习微博日志分析
- 【毕业设计】java基于微信小程序高校闲置物品交易平台小程序 闲置物品交易微信小程序 闲置物品交易小程序
- Mac和iOS开发资源汇总—更新于2013-07-19(转自破船)
- oVirt4.2给虚拟机分配vGPU
- RIFE-实时视频插帧算法 | RIFE:Real-Time Intermediate Flow Estimation for Video Frame Interpolation
- java.io.EOFException: SSL peer shut down incorrectly jdk1.8不支持TSLv1.3问题解决