Powershell中请求WebServices并以JSON格式输出结果

适用于PS3.0及以后版本。

这里可以用JSON格式从网上得到大量的信息,下面例子演示如何将网上查到的结果转换成JSON对象。

这个例子使用了一个德国铁路公司的网站,你可以输入一个火车站的名字或城市,他将返回你想要去的类似所有车站名称。

代码如下:

# ask for part of the train station name
$name = Read-Host 'Enter part of train station Name'
 
# query webservice
$url = "http://openbahnapi.appspot.com/rest/stations/list?contains=$name"
$site = Invoke-WebRequest -Uri $url
 
# get JSON result
($site.Content | ConvertFrom-Json ).value

这个结果类似如下:

代码如下:

PS> Enter part of train station name: hanno
Hannover Hbf
HANNOVER MESSE
Hannoversch Münden
Hannover-Nordstadt
Hannover Bismarckstr.
Hannover Karl-Wiechert-Allee
Hannover-Ledeburg
Hannover-Linden/Fischerhof
Hannover-Vinnhorst
Hannover-Leinhausen
Hannover Anderten-Misburg
Hannover-Bornum

PS>

这个例子不是要教你去查询德国铁路,所以如果你对此不感兴趣,可以修改成别的应用:
Invoke-WebRequest是一个重要部分,它包含Web服务返回的结果;同时ConvertFrom-Json 也相当重要,它可以将结果转化成对象。
注意Web服务的处理变化,这里只是一个用例。

(0)

相关推荐

  • JQuery调用WebServices的方法和4个实例

    你甚至为每个ajax请求添加一个后端页面!你是不是甚至在想,尼玛,要是能够直接调用C#类文件中的方法就爽了?!(这里FishLi做了一个框架,有兴趣可以去看看)可是,你大概忘记了,我们是程序员,我们是懒惰的,我们要让电脑给我们干更多的事情!(这里装装13),但其实,微软和JQuery大牛们早帮我们解决了这个小问题. 大致的调用分为以下几种: 一.无参数 有返回值的调用 前端JS代码: 复制代码 代码如下: $("#btn1").click(function() {           

  • asp.net下实现支持文件分块多点异步上传的 Web Services

    本文的客户端应用程序不包括 ASP.Net Web 应用程序! 本文假设 URL: http://localhost/mywebservices/updownload.asmx 共有 4 个程序文件 (Web.Config 就不赘述了) Server Side: 标题中所提到的 "异步" 其实在服务器端的程序并没有什么特殊的,而主要是通过客户端应用程序 异步调用相关 Web Method 实现的! 1. updownload.asmx ,位于 IIS 的某个 Web 共享目录,代码如下

  • Web Services使用多态的方法

    在Web Services方法中,往往使用的都是一个具体类型的参数,这个参数一般就是一个数据对象.ASP.NET Web Services通过声明XmlIncludeAttribute可以实现Web Services方法中运用多态. XmlIncludeAttribute允许XmlSerializer在序列化火反序列化对象时识别类型.当应用XmlIncludeAttribute时,需指定派生类的Type.XmlSerializer序列化同时包含基类和派生类的对象之后,它就可以识别两种对象类型.

  • asp.net Web Services上传和下载文件(完整代码)第1/2页

    下面,我们就分别介绍如何通过Web Services从服务器下载文件到客户端和从客户端通过Web Services上载文件到服务器.一:通过Web Services显示和下载文件 我们这里建立的Web Services的名称为GetBinaryFile,提供两个公共方法:分别是GetImage()和GetImageType(),前者返回二进制文件字节数组,后者返回文件类型,其中,GetImage()方法有一个参数,用来在客户端选择要显示或下载的文件名字.这里我们所显示和下载的文件可以不在虚拟目录

  • VS2008中使用JavaScript调用WebServices

    最近这几天任务完成了,也没什么重要的事情,抽空学习了一下WebServices的知识,感觉还是挺有意思,难度也不是很大. 首先,用VS2008创建一个asp.net网站 其次,项目 右键->添加新项->Web 服务   如下图: 就会产生WebService.cs和WebService.asmx两个文件 在WebService.cs中添加代码: 复制代码 代码如下: using System; using System.Collections.Generic; using System.Lin

  • Powershell中请求WebServices并以JSON格式输出结果

    适用于PS3.0及以后版本. 这里可以用JSON格式从网上得到大量的信息,下面例子演示如何将网上查到的结果转换成JSON对象. 这个例子使用了一个德国铁路公司的网站,你可以输入一个火车站的名字或城市,他将返回你想要去的类似所有车站名称. 复制代码 代码如下: # ask for part of the train station name $name = Read-Host 'Enter part of train station Name'   # query webservice $url

  • Powershell展开对象数据结构并以JSON格式输出

    适用于3.0及以后版本. 一个对象包含多个嵌套属性和多个子对象. 要显示对象的属性和自属性,可以转换成JSON,它可以更好的表示这些潜逃属性. 这个例子取回当前的Powershell进程,将其属性转换成JSON,然后再发送给剪切板.现在你就可以剪切到任何文本对象中去了. 复制代码 代码如下: Get-Process -Id $pid  | ConvertTo-Json | clip.exe 要控制获取属性的层级,你可以在ConvertTo-Json中使用-Depth参数,这个默认值是2(所以默认

  • JS中的数组转变成JSON格式字符串的方法

    有一个JS数组,如: var arr = [["projectname1","projectnumber1"],["projectname2","projectnumber2"],["projectname3","projectnumber3"]]; 想将此数组转换成JSON字符串,如: var jsonarr = [{"projectname":projectnam

  • php将从数据库中获得的数据转换成json格式并输出的方法

    如下所示: header('content-type:application/json;charset=utf8'); $results = array(); while ($row = mysql_fetch_assoc($result_query)) { $results[] = $row; } if($results){ echo json_encode($results); }else{ echo mysql_error(); } 将查询到的数组存放到一个新的数组中,然后返回json格式

  • python 把数据 json格式输出的实例代码

    有个要求需要在python的标准输出时候显示json格式数据,如果缩进显示查看数据效果会很好,这里使用json的包会有很多操作 import json date = {u'versions': [{u'status': u'CURRENT', u'id': u'v2.3', u'links': [{u'href': u'http://controller:9292/v2/', u'rel': u'self'}]}, {u'status': u'SUPPORTED', u'id': u'v2.2'

  • PHP连接MySQL数据库并以json格式输出

    1.简介 PHP连接数据库有多种方法,现介绍常用的MySQL数据库连接方法,PHP连接MySQL也有两种方式,一是面向对象,二是面向过程方式,两种方法稍有区别.下面通过代码介绍两种方法连接MySQL并以json格式输出. 2.面向对象方式 <?php header("content-Type: text/html; charset=utf-8");//字符编码设置 $servername = "localhost"; $username = "roo

  • Golang如何将日志以Json格式输出到Kafka

    目录 格式化接口 普通文本格式化器 Json文本格式化器 写日志接口 写日志到文件 写日志到Kafka 接口的组装 如何提高日志处理的吞吐量 在上一篇文章中我实现了一个支持Debug.Info.Error等多个级别的日志库,并将日志写到了磁盘文件中,代码比较简单,适合练手.有兴趣的可以通过这个链接前往:https://github.com/bosima/ylog/releases/tag/v1.0.1 工程实践中,我们往往还需要对日志进行采集,将日志归集到一起,然后用于各种处理分析,比如生产环境

  • golang实现sql结果集以json格式输出的方法

    本文实例讲述了golang实现sql结果集以json格式输出的方法.分享给大家供大家参考,具体如下: 复制代码 代码如下: func getJSON(sqlString string) (string, error) {     stmt, err := db.Prepare(sqlString)     if err != nil {         return nil, err     }     defer stmt.Close()     rows, err := stmt.Query

  • Python日志:自定义输出字段 json格式输出方式

    最近有一个需求:将日志以json格式输出, 并且有些字段是logging模块没有的.看了很多源码和资料, 终于搞定, 抽取精华分享出来, 一起成长. import json import logging class JsonFilter(logging.Filter): ip = 'IP' source = 'APP' def filter(self, record): record.ip = self.ip record.username = self.source return True i

  • Java Web程序中利用Spring框架返回JSON格式的日期

    返回Json时格式化日期Date 第一步:创建CustomObjectMapper类 /** * 解决SpringMVC使用@ResponseBody返回json时,日期格式默认显示为时间戳的问题.需配合<mvc:message-converters>使用 */ @Component("customObjectMapper") public class CustomObjectMapper extends ObjectMapper { public CustomObject

随机推荐