【发布时间】:2021-04-12 17:21:58
【问题描述】:
寻求帮助。
我是 powershell 的新手,希望调用具有 JSON 输出(封装在单个数组中)的 API。
以下是 API 的响应:
{
"data": [
{
"Records": "[
{
'RecordId':'A8E00212-BE7B-4AA8-A87B-121E7018EAE0',
'RecordNumber':'1999',
'FormName':'Costco Boneless Center Cut Loin (Strap On, Strap Off, Super Trim, Premium)',
'FormVersion':'22',
'FormType':'Check',
'LocationName':'Beardstown (85B)',
'ResourceName':'Loins-Costco Boneless CC Loin',
'SubmittedUserName':'Maria Nava-Garcia',
'SubmittedDate':'2020-11-14T16:54:35.920',
'SubmittedDateLocal':'2020-11-14T16:54:35.920',
'SubmittedTimeZone':'America/Chicago',
'ProcessedDate':'2020-11-14T17:41:23.873',
'ModifiedDate':'2020-11-14T16:54:35.920',
'FieldGroups': [
{
'FieldGroupName':'' ,
'Fields': [
{'Date':'11/14/2020'},
{'Shift':'1'},
{'Product Code':'55620'},
{'Number of Pieces Audited':'8'},
{'Incorrect Bagging Orientation, S-Shaped Bags':'0'},
{'Incorrect Pieces in Bag':'0'},
{'Incorrect Boxing Placement':'0'},
{'Bag Tails':'0'},
{'Dating Over Bag Print':'0'},
{'Bones/Cartilage':'1'},
{'Number of Leakers':'0'},
{'Foreign Material/Contamination':'0'},
{'PSE':'0'},
{'Incorrect Code Dating and Est. #':'0'},
{'Blood Splash':'0'},
{'Dark Bruise':'0'},
{'Scores':'0'},
{'Sirloin End Not Square':'0'},
{'Pin Bone Removal':'0'},
{'Shoulder End Eye Diameter':'0'},
{'Gouges':'0'},
{'Fat':'2'},
{'Remaining Strap (Strap Off Codes Only)':'0'},
{'Belly Strap (Strap On Codes Only)':'0'},
{'Ham Patch Present':'0'},
{'False Lean Present':'1'},
{'Tag Ends':'0'},
{'Packaging Defects Total':'0'},
{'% Packaging Defects':'0'},
{'Critical Defects Total':'1'},
{'% Critical Defects':'12.5'},
{'Other Defects Total':'3'},
{'% Other Defects':'37.5'},
{'Total Defects':'4'},
{'Audit Acceptable':'No'},
{'What Did You Do?':'Tagged'},
{'How Many Boxes?':'15'},
{'Comments':'Notified Dave Long Hector Rodriguez and Jeff Harris'},]},]}
]"
}
]
}
这是我到目前为止编写的代码,
Invoke-WebRequest -Uri 'https://abcd.com/api' | ConvertFrom-Json | Select-Object -ExpandProperty data |ConvertTo-Csv -NoTypeInformation | Set-Content C:\OUTPUT\OUTPUT.csv
如何将其拆分为 excel 文件中的所有列。
感谢大家的帮助!!
【问题讨论】:
-
请编辑问题以显示预期输出以及实际输出(或任何错误)是什么。另外请格式化所有代码,选择它,然后按文本输入框上方的“代码”按钮。
-
用
ForEach-Object { $_.data.Records }替换Select-Object -ExpandProperty data -
@MathiasR.Jessen ,我尝试替换它并输出我得到的 Length 和 1682 在 2 个单独的行中)。
-
@zett42 - 完成,任何输入?
-
Recordsvalue 看起来像一个包含另一个 JSON 的字符串,这很奇怪。这只是一个复制粘贴错误还是应该是这样的?
标签: json powershell api powershell-3.0 powershell-4.0