Как использовать Curl в PS - PullRequest
0 голосов
/ 26 октября 2019

Я не знаю, как использовать Curl в PowerShell.

PHP Curl выглядит:

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_URL, "link");
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_VERBOSE, 1);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    "Key: " . $apiPublic,
    "Sign: " . $snt_header
    ));
    curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);

Я пробовал все, используя:

Invoke-RestMethod -Uri link`
                  -Method 'Post'`
                  -Headers @( "Key:$apiPublic", "Sign:$sntHeader")`
                  -ContentType 'application/x-www-form-urlencoded'

1 Ответ

0 голосов
/ 26 октября 2019
$uri = 'https://dsx.uk/tapi/v2/info/account'
$headers = @{
    'key' = 'foo'
    'sign' = 'bar'
}
$body = @{
    value= "baz"
}

$result = Invoke-RestMethod -Uri $uri -Method Post -Headers $headers -Body $body
$result

Если вы получили «Invoke-RestMethod: базовое соединение было закрыто: при отправке произошла непредвиденная ошибка». Добавьте строку ниже в ваш скрипт, так как Powershell по умолчанию использует TLS1.0 для веб-запроса. Однако, если сервер ожидает 1.2, вы должны указать Powershell использовать 1.2 вместо

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...