【发布时间】:2017-10-01 16:39:23
【问题描述】:
我有一个 API,当我运行 PowerShell 脚本时:
Invoke-WebRequest 'https://api.tfl.gov.uk/Place/Type/OysterTicketShop'|ConvertFrom-Json
我得到错误:
ConvertFrom-Json : 使用 JSON JavaScriptSerializer 进行序列化或反序列化时出错。字符串的长度超过了 maxJsonLength 属性上设置的值。参数名称:input At line:2 char:72 + Invoke-WebRequest 'https://api.tfl.gov.uk/Place/Type/OysterTicketShop'|ConvertFr ... + ~~~~~~~~~ + CategoryInfo : NotSpecified: (:) [ConvertFrom-Json], ArgumentException + FullyQualifiedErrorId : System.ArgumentException,Microsoft.PowerShell.Commands.ConvertFromJsonCommand
我的理解是 API 相当大,但我无法解决问题。
我尝试使用:
Invoke-WebRequest 'https://api.tfl.gov.uk/Place/Type/OysterTicketShop'|ConvertFrom-Json
[void][System.Reflection.Assembly]::LoadWithPartialName("System.Web.Extensions")
$jsonserial= New-Object -TypeName System.Web.Script.Serialization.JavaScriptSerializer
$jsonserial.MaxJsonLength = $somevalue
$Obj = $jsonserial.DeserializeObject($rawtext)
$jsonserial.MaxJsonLength = [int]::MaxValue
我仍然遇到同样的错误。
【问题讨论】:
-
我编辑并格式化了代码。请检查我是否删除或添加了一些有害的空格。
标签: powershell powershell-3.0 powershell-4.0