Почему мой преобразованный код PowerShell для почтальона возвращает пустые скобки?

Я могу успешно использовать почтальона для вызова API, который я делаю, но теперь я пытаюсь преобразовать его в powershell или powershell ISE, и я получаю все эти пустые скобки и не уверен, как устранить неполадки или понять эти результаты. Означает ли это, что я успешно прошел аутентификацию и результаты еще не читаются?

Для ясности я конвертирую тестирование Postman в фрагмент "Powershell Rest Method". Это результат того фрагмента, который был успешно применен в почтальоне.

add-type -AssemblyName System.Net.Http
$browser = New-Object System.Net.WebClient
$browser.Proxy.Credentials =[System.Net.CredentialCache]::DefaultNetworkCredentials 
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

$headers = New-Object "System.Collections.Generic.Dictionary[[String],[String]]"
$headers.Add("X-Requested-With", "blahblah")
$headers.Add("Authorization", "Basic blahblahblahblahblahblahbl==")

$multipartContent = [System.Net.Http.MultipartFormDataContent]::new()
$stringHeader = [System.Net.Http.Headers.ContentDispositionHeaderValue]::new("form-data")
$stringHeader.Name = "action"
$StringContent = [System.Net.Http.StringContent]::new("list")
$StringContent.Headers.ContentDisposition = $stringHeader
$multipartContent.Add($stringContent)

$stringHeader = [System.Net.Http.Headers.ContentDispositionHeaderValue]::new("form-data")
$stringHeader.Name = "echo_request"
$StringContent = [System.Net.Http.StringContent]::new("1")
$StringContent.Headers.ContentDisposition = $stringHeader
$multipartContent.Add($stringContent)

$stringHeader = [System.Net.Http.Headers.ContentDispositionHeaderValue]::new("form-data")
$stringHeader.Name = "ag_ids"
$StringContent = [System.Net.Http.StringContent]::new("12345,12345,12345,12345")
$StringContent.Headers.ContentDisposition = $stringHeader
$multipartContent.Add($stringContent)

$stringHeader = [System.Net.Http.Headers.ContentDispositionHeaderValue]::new("form-data")
$stringHeader.Name = "no_vm_scan_since"

$StringContent = [System.Net.Http.StringContent]::new("2020-04-13")
$StringContent.Headers.ContentDisposition = $stringHeader
$multipartContent.Add($stringContent)

$body = $multipartContent

$response = Invoke-RestMethod 'https://qualysapi.qualys.com/api/2.0/fo/asset/host/' -Method 'POST' -Headers $headers -Body $body
$response | ConvertTo-Json
[
    [

    ],
    [

    ],
    [

    ],
    [
        [

        ],
        [
            "System.Xml.XmlWhitespace",
            "System.Xml.XmlElement",
            "System.Xml.XmlWhitespace",
            "System.Xml.XmlElement",
            "System.Xml.XmlWhitespace",
            "System.Xml.XmlElement",
            "System.Xml.XmlWhitespace"
        ],
        [

        ]
    ],
    [

    ]
]

0 ответов

Другие вопросы по тегам