Я пытаюсь отправить системную информацию непосредственно из этого сценария PS в мой Python API, когда я отправляю данные JSON из Powershell в Postman в API, они отлично работают, но когда я пытаюсь сделать это в PowerShell Я продолжаю получать следующую ошибку:
400 Bad Request
Bad Request
The browser (or proxy) sent a request that this server could not understand.
At line:1 char:71
+ ... rtTo-Json | Invoke-RestMethod -Uri "127.0.0.1:5000/event" -Method Pos ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-RestMethod], WebException
+ FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeRestMethodCommand
Вот код PS:
$Result = Get-EventLog -LogName Application -Entrytype Error
$url = "http://127.0.0.1:5000/event"
Invoke-RestMethod -Uri $url -Method POST -Body ($Result|ConvertTo-Json) -ContentType "application/json"
Python код: (Он печатает True
при request.is_json
при публикации из PS, но с кодом 400)
@app.route('/event', methods=['POST'])
def postEventViewer():
print(request.is_json)
content = request.get_json()
for item in content:
machinename = item['MachineName']
eventid = item['EventID']
message = item['Message']
source = item['Source']
print(machinename)
return 'Successful'
Что я здесь не так делаю? Спасибо!