Curl mit Bearer-Authorization unter Powershell
Hi.
warum kann die Powershell nicht einfach das tun, was ich will?
Ich bekomme den folgenden Request nicht Ausnahmefrei ans Laufen.. Hat jemand eine Idee?
Das curl-Original
...der Fehlerbehaftete Versuch via Powershell
warum kann die Powershell nicht einfach das tun, was ich will?
Ich bekomme den folgenden Request nicht Ausnahmefrei ans Laufen.. Hat jemand eine Idee?
Das curl-Original
curl -X POST "https://api.application.de/v1/csv-request" -H "accept: application/json" -H "Authorization: Bearer $JWT" -H "Content-Type: application/json" -d "{ \"fields\": [ \"SKU\", \"PRICE\" ], \"numberFormat\": \"DECIMAL_DOT\"}"
...der Fehlerbehaftete Versuch via Powershell
Invoke-WebRequest -Method Post -Uri "https://api.application.de/v1/csv-request"`
-Headers @{"Authorization"="bearer "+ New-Object System.Management.Automation.PSCredential($JWT)}, @{"Accept" = "application/json"}`
-ContentType 'application/json'`
-Body "{ \"fields\": [ \"SKU\", \"PRICE\" ], \"numberFormat\": \"DECIMAL_DOT\"}"
Please also mark the comments that contributed to the solution of the article
Content-Key: 385493
Url: https://administrator.de/contentid/385493
Printed on: April 19, 2024 at 05:04 o'clock
9 Comments
Latest comment
warum kann die Powershell nicht einfach das tun, was ich will?
Wenn du Fehler baust ist sie nicht schuld ! Eine Skriptsprache ist nur so gut wie sein Bediener.$deinToken = "xxxxxxxxxxxxx"
Invoke-WebRequest -Method Post -Uri 'https://api.application.de/v1/csv-request' -Headers @{'Authorization' ="Bearer $deinToken"; 'Accept' = 'application/json'} -ContentType 'application/json' -Body (@{fields = @('SKU','PRICE');numberFormat = 'DECIMAL_DOT'} | ConvertTo-JSON)
Zitat von @erikro:
sollte gehen.
Ein PSCredentialObject in einem String-Header das dann zum String System.Management.Automation.PSCredential auflöst?? Blödsinn, da muss nur das eigetliche Token als String hin, fertig aus.@{"Authorization"="bearer $(New-Object System.Management.Automation.PSCredential($JWT))"}
sollte gehen.
Wenn er wirklich noch zusätzliche Http-Credentials mitgeben muss dann tut er das mit dem Parameter -Credentials von Invoke-Webrequest.
Moin,
Da hast Du recht. Da habe ich eine Sekunde zu kurz nachgedacht. ;)
Liebe Grüße
Erik
Zitat von @137084:
Wenn er wirklich noch zusätzliche Http-Credentials mitgeben muss dann tut er das mit dem Parameter -Credentials von Invoke-Webrequest.
Zitat von @erikro:
sollte gehen.
Ein PSCredentialObject in einem String-Header das dann zum String System.Management.Automation.PSCredential auflöst?? Blödsinn, da muss nur das eigetliche Token als String hin, fertig aus.@{"Authorization"="bearer $(New-Object System.Management.Automation.PSCredential($JWT))"}
sollte gehen.
Wenn er wirklich noch zusätzliche Http-Credentials mitgeben muss dann tut er das mit dem Parameter -Credentials von Invoke-Webrequest.
Da hast Du recht. Da habe ich eine Sekunde zu kurz nachgedacht. ;)
Liebe Grüße
Erik
Wat weis ich was das deine Anwendung an Headern erwartet ... vermutlich wieder nur Tippfehler, Großkleinschreibung, whatever.