PowerFlex 3.x SetPassword" REST API Çağrısı "400 Hatalı İstek" Döndürüyor
Summary: VxFlexOS/PowerFlex REST API ile etkileşim kurmak için Powershell'i kullanırken "setPassword" işlevi "400 hatalı istek" döndürüyor. Ancak, "resetPassword" gibi diğer işlevler iyi çalışır. Senaryo: Oturum açmış kullanıcıların parolasını REST API'de "setPassword" işleviyle ayarlamak için özel kod kullanın. VxFlexOS/PowerFlex Ağ Geçidi, hatalı istek olarak "400" HTML kodu döndürür. Ancak diğer işlevler hala hatasız çalışır. ...
This article applies to
This article does not apply to
This article is not tied to any specific product.
Not all product versions are identified in this article.
Symptoms
Günlüklerde veya komut satırında aşağıdakine benzer bir şey gösterilir: "Uzak sunucu bir hata döndürdü: (400) Bad Request":


Cause
setPassword" (oldPassword nesnesi artı değerini ve newPassword nesnesi artı değerini gerektirir) gibi daha büyük gövde yüklerine sahip bazı işlevler, VxFlex REST API'nin post çağrısını doğru bir şekilde yorumlayabilmesi için başlığın "application/json" içerik türünü de içermesini gerektirir.
Resolution
Bu sorunu çözmek için içerik türünü Web İsteği ile sağlayın, örneğin PowerShell'deki aşağıdaki kod, gönderinin başarılı olması için Invoke-WebRequest yöntemine "-ContentType "application/json" " eklenmesini gerektirir":
#format the user/pw hash in BASE64 to get it parsed by REST
$head = @{"Authorization" = "Basic "+[System.Convert]::ToBase64String([System.Text.Encoding]::UTF8.GetBytes("admin:Scaleio1234"))}
$head
#get token for authorization.
$r = Invoke-WebRequest -Uri https://192.168.199.76/api/login -Method Get -Headers $head -UseBasicParsing
$token = [System.Convert]::ToBase64String([System.Text.Encoding]::UTF8.GetBytes(":" + $r.content.replace('"','')))
$header = @{'Authorization' = "Basic $token"}
$payload2 = @{
oldPassword = 'Scaleio1234'
newPassword = 'Scaleio123'
}
$body2 = Convertto-JSON -InputObject $payload2
Invoke-WebRequest -Uri https://192.168.199.76/api/instances/User/action/setPassword -Headers $header -Method Post -ContentType "application/json" -Body $body2
Aynı şey Curl veya diğer programlama dillerinden de yapılabilir:
curl -v -k -X POST -H "Content-Type:application/json" ...
Etkilenen Sürümler
PowerFlex 3.x
Affected Products
PowerFlex SoftwareProducts
PowerFlex rack, PowerFlex Appliance, PowerFlex custom nodeArticle Properties
Article Number: 000194607
Article Type: Solution
Last Modified: 14 Apr 2025
Version: 2
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.