我有一个接受x-www-form-urlencoded的现有REST API。 API需要参数apikey,并在Postman中成功测试,如下所示。
但是我需要使用Powershell调用此API .Below是我的代码:
$params = @{"apikey"="abcd1234"}
Invoke-WebRequest -Uri http://localhost:3030/api/v1/usergroupsync -Method POST -Body $params
#also tried below, no avail.
Invoke-RestMethod -Uri http://localhost:3030/api/v1/usergroupsync -Method POST -Body $params
但是我遇到了这个错误:
Invoke-WebRequest : The underlying connection was closed: An unexpected error occured on a receive At line:14 char:1
+ Invoke-WebRequest -Uri http://localhost:3030/api/v1/usergroupsync -Method POST -...
+==============================================================================
+ CategoryInfo : InvalidOperations: (System.Net.HttpWebRequest:HTTTpWebRequest) [Invoke-WebRequest], WebException
+ FullyQualifiedErrorId : WebcmdletWebResponseException,Microsoft.Powershell.Commands.InvokeWebRequest
如果我删除-Body,则没有错误,并且响应符合预期" API密钥无效"这意味着我的REST API正确验证。
所以我怀疑我的问题是否在身上?关于如何解决这个问题的任何想法?
PS版本是4.0.0
PS C:\> $PSVersionTable.PSVersion
Major Minor Build Revision
----- ----- ----- --------
4 0 -1 -1