您的第一个问题,如果我的问题格式不正确,请原谅我。 我遇到一个问题,试图在Powershell脚本中使用调用Web请求通过Delete API调用删除某些内容。
$password = 'Password'
$username = 'Username'
$postParams = {delete info here}
$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $username,$password)))
Invoke-WebRequest -Method Delete -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)} -Uri https://api.******.****.com/rest/v1/?operation=delete -Body $postParams
该命令运行并输出请求,但是似乎也没有真正删除即时消息。我在代码中缺少什么吗?它已正确设置为删除API调用,但我已将方法切换为delete,但该方法以前是POST,而且也无法正常工作。
输出:
StatusCode : 200
StatusDescription : OK
Content : {"status" : "error" , "request_id" : "na",
"details": "failed authentication"}
RawContent : HTTP/1.1 200 OK
Strict-Transport-Security: max-age=63072000;
includeSubdomains
X-Frame-Options: DENY
X-Content-Type-Options: nosniff
Vary: Accept-Encoding
Content-Length: 79
Content-Type: text/h...
Forms : {}
Headers : {[Strict-Transport-Security, max-age=63072000;
includeSubdomains], [X-Frame-Options, DENY], [X-Content-Type-Options,
nosniff], [Vary,
Accept-Encoding]...}
Images : {}
InputFields : {}
Links : {}
ParsedHtml : System.__ComObject
RawContentLength : 79
API调用通常在控制台中输出类似于{“ status”:“ error”,“ request_id”:“ na”,“ details”:“ failed authentication”}的内容,但是na通常是一个ID。在线,如果您单击API链接,即使对于有效的API调用,您也会看到{“状态”:“错误”,“ request_id”:“ na”,“详细信息”:“身份验证失败”}。
任何帮助将不胜感激。