方法
assetId
中one()
的数据类型是Int64
。但是当我在该方法之外打印返回的变量时,数据类型现在是一个对象。
function one(){
$response = Invoke-WebRequest -Uri $finalizeUrl -Method 'POST' -Body $createResponse.Content -Headers @{"Authorization" = $authToken; "Content-Type" = "application/json" }
$responseObject = $response.Content | ConvertFrom-Json
$assetId = $responseObject.asset_id
Write-Host $assetId
Write-Host "Type of assetId in function one: " ($assetId.GetType().Name)
return $assetId
}
$asset_id = one
Write-Host $asset_id
Write-Host "Type of asset_id outside one: " ($asset_id.GetType().Name)
输出:
140863
函数一中assetId的类型:Int64{"成功":true,"消息":null} 140863
函数一外部 asset_id 的类型:Object[]
我在这里做错了什么。
从输出来看,请求的状态消息似乎与函数返回中的
asset_id
结合在一起,因此它作为对象返回。我认为您的实际代码中可能有一些附加代码可能已返回它。您可以通过将状态消息分配给另一个变量来解决此问题
$request_status, $asset_id = one