nodejs 脚本获取webservice数据可key值索引
来源:互联网 发布:网络销售渠道有哪些 编辑:程序博客网 时间:2024/06/06 13:56
#!/usr/bin/env node
//指令说明:httpget url -o -j -k
//-o 输出对象
//-j 输出json String
//-k 输出json对象,可循环输入key获取value值,数组用索引0..来获取,支持多层获取
//eg: user.name 获取user的name,user.brothers.0:获取第一个兄弟信息
var http = require('http'),
jsonObj = null;
jsonStr = "";
function httpGet(url){
jsonStr = "";
http.get(url, function(res){
res.on('data', function(chunk){
jsonStr += chunk
});
res.on('end', function(){
console.log("请求url:\n" + url);
console.log("返回数据:");
// console.log(JSON.stringify(JSON.parse(data)));
jsonObj = JSON.parse(jsonStr);
logData();
});
res.on('error', function(e){
console.log("请求url:\n" + url);
console.log("发生异常:\n" + e.message);
});
}).on('error', function(e) {
console.log("请求url:\n" + url);
console.log("发生异常:\n"+e);
});
}
httpGet(process.argv[2]);
var para = process.argv;
function logData(){
for (var i = para.length - 1; i >= 0; i--) {
if (para[i] == "-j") {
console.log(jsonStr);
}else if (para[i] == "-o" || para[i] == "-k") {
console.log(jsonObj);
}
}
}
for (var i = para.length - 1; i >= 0; i--) {
if (para[i] == "-k") {
process.stdin.resume();
process.stdin.on('data', function(data) {
try {
// parse the input data into a number
var key = data.toString();
key = key.substring(0,key.length-1);
var keys=key.split(".");
var value = jsonObj;
for (var i = 0; i < keys.length ; i++) {
value = value[keys[i]];
}
console.log(value);
} catch(err) {
process.stderr.write(err.message + "\n"); }
});
}
}
//指令说明:httpget url -o -j -k
//-o 输出对象
//-j 输出json String
//-k 输出json对象,可循环输入key获取value值,数组用索引0..来获取,支持多层获取
//eg: user.name 获取user的name,user.brothers.0:获取第一个兄弟信息
var http = require('http'),
jsonObj = null;
jsonStr = "";
function httpGet(url){
jsonStr = "";
http.get(url, function(res){
res.on('data', function(chunk){
jsonStr += chunk
});
res.on('end', function(){
console.log("请求url:\n" + url);
console.log("返回数据:");
// console.log(JSON.stringify(JSON.parse(data)));
jsonObj = JSON.parse(jsonStr);
logData();
});
res.on('error', function(e){
console.log("请求url:\n" + url);
console.log("发生异常:\n" + e.message);
});
}).on('error', function(e) {
console.log("请求url:\n" + url);
console.log("发生异常:\n"+e);
});
}
httpGet(process.argv[2]);
var para = process.argv;
function logData(){
for (var i = para.length - 1; i >= 0; i--) {
if (para[i] == "-j") {
console.log(jsonStr);
}else if (para[i] == "-o" || para[i] == "-k") {
console.log(jsonObj);
}
}
}
for (var i = para.length - 1; i >= 0; i--) {
if (para[i] == "-k") {
process.stdin.resume();
process.stdin.on('data', function(data) {
try {
// parse the input data into a number
var key = data.toString();
key = key.substring(0,key.length-1);
var keys=key.split(".");
var value = jsonObj;
for (var i = 0; i < keys.length ; i++) {
value = value[keys[i]];
}
console.log(value);
} catch(err) {
process.stderr.write(err.message + "\n"); }
});
}
}
0 0
- nodejs 脚本获取webservice数据可key值索引
- 遍历表中所有的数据(通过key值来获取的,而不是i(索引)值)
- nodejs 获取post数据
- NodeJS数据对象获取
- 根据索引获取Dictionary的key和value值
- SQL SERVER获取索引脚本
- Android数据解析获取JSONObject的key值-Iterator应用
- 图解SQLServer2005获取WebService数据
- android获取webservice list数据
- 获取webservice查询的数据
- 调用WebService接口获取数据
- 获取搜索Key值
- NodeJs 实现 jsonp 方式获取xml数据
- nodejs获取http请求的传入数据
- nodejs同步调用获取mysql数据大坑
- nodejs传输数据获取及中间件设定
- Nodejs get获取远程服务器接口数据
- Newtonsoft 获取动态key的json数据
- Java之集合框架Collection
- mybatis多表查询
- Jupyter notebook 集成 bash kernel
- php 中require和include的区别
- 调用函数实现数组的打印
- nodejs 脚本获取webservice数据可key值索引
- 字典树模板
- oracle数据库修改字符集
- ceil、floor函数
- map用法
- poj 3295
- PHP常用知识点记录
- 题目1184:二叉树遍历
- aspectjweaver.jar+ aopalliance.jar+mchange-commons-java.jar+cglib.jar官网下载