如何在 Windows 上 运行 一个简单的 API 请求?

How to run a simple API request on Windows?

我是这个主题的初学者,所以如果我写错了,请原谅。我想 运行 一个简单的 API 请求,返回特定国家/地区二氧化碳水平的信息。我想问你使用什么软件以及如何使这段代码工作。

网站代码:https://docs.co2signal.com/#introduction

我的朋友已经成功运行 代码在Terminal 上了Mac。他得到了一些二氧化碳数据的回应。当我在 Win10 的命令提示符中尝试时,它没有用。我还尝试了其他程序,如 Git Bash 或 Postman。还是不行。

这是原来的API请求码:

卷曲'https://api.co2signal.com/v1/latest?countryCode=DK' -H 'auth-token: myapitoken'

需要身份验证令牌,即:2905e4afe4a7eb88 因此,正确的代码应该是这样的:

卷曲'https://api.co2signal.com/v1/latest?countryCode=DK'

-H 'auth-token: 2905e4afe4a7eb88'

原始网站代码:https://docs.co2signal.com/#introduction

预期结果:服务器响应 CO2 水平数据。

实际结果:在任何程序中,都存在如下错误:
"message": "No API key found in headers or querystring"

我不完全确定我是否答对了你的问题,但我假设你想从 Windows 命令行访问 API 以获得一些 CO2 数据。您只有 MAC 或 Linux 命令,并希望通过某种方式将其转换为可在 Windows 上运行。

您可以为此使用 Windows Powershell,例如创建一个脚本 test.ps1:

$headers = New-Object "System.Collections.Generic.Dictionary[[String],[String]]"
$headers.Add("auth-token", 'myapitoken')

$response = Invoke-RestMethod 'https://api.co2signal.com/v1/latest?countryCode=DK' -Headers $headers

echo $response

PAUSE

Invoke-RestMethod 是 PowerShell 3.0 的一部分,请参见。 here for the Documentation

请注意,当您执行此代码段时,结果只会打印到控制台。 PAUSE 命令将在请求完成后保持 PowerShell window 打开。

我得到的打印结果如下所示:

_disclaimer : xyz
status      : ok
countryCode : DK
data        : @{fossilFuelPercentage=}
units       : @{carbonIntensity=gCO2eq/kWh}

也许您还应该尝试另一个国家代码,因为目前没有 DK 的数据。