PowerStore: "Unable to parse passed url" dla żądań REST GET z parametrem "select", gdzie określono parametr zagnieżdżony

Summary: Odpowiedź to "Unable to parse passed url" dla niektórych żądań REST GET z parametrem "select", w którym określono parametr zagnieżdżony.

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

Niektóre skomplikowane żądania REST GET kończą się niepowodzeniem z powodu błędu. Takie żądanie wymaga odwołania wstecznego z odwołaniem do samego siebie w ramach jednego żądania.

Przykład:
/api/rest/appliance?select=eth_ports(partner)

Kod błędu:
0xE04040020008 z komunikatem "Nie można przeanalizować przekazanego adresu URL".

Nuta: W przypadku wyświetlenia tego komunikatu o błędzie podczas sprawdzania poprawności działania przed aktualizacją (PUHC), zapoznaj się z artykułem PowerStore: Kontrola poprawności działania systemu wykrywa brak miejsca w /_node. To jest inna kwestia.

Cause

Jest to spowodowane problemem postgREST, który generuje nieprawidłowe zapytania.

Resolution

Zamiast zagnieżdżać parametry w żądaniu, wyślij wiele żądań, aby uzyskać wymagane informacje.

Poniżej przedstawiono niektóre żądania GET z parametrem zagnieżdżonym, których dotyczy problem, a które nie działają w trybie REST. Należy złożyć dwa odrębne wnioski. 
  • GET /api/rest/appliance?select=eth_ports(partner)
  • GET /api/rest/appliance?select=virtual_volumes(target_virtual_volumes)
  • GET /api/rest/appliance?select=virtual_volumes(źródło)
  • GET /api/rest/appliance?select=virtual_volumes(nadrzędny)
  • GET /api/rest/appliance?select=virtual_volumes(child_virtual_volumes)
  • GET /api/rest/appliance?select=hardware(children)
  • GET /api/rest/appliance?select=hardware(parent)
  • GET /api/rest/appliance?select=fc_ports(partner)
  • GET /api/rest/appliance?select=sas_ports(partner)
  • GET /api/rest/appliance?select=eth_ports(partner)

Przykład:
Zamiast:
/api/rest/appliance?select=eth_ports(partner)

Przykład błędu parametru zagnieżdżonego:
Linux~$ curl -i -k -s -u 'admin:' -X GET "https:///api/rest/appliance?select=eth_ports(partner)"
HTTP/1.1 400 Bad Request
DELL-EMC-TOKEN: 8t7deLGkLuG8g+Hg2uzMw6B4p2KhQ5bay3qW05tPVMs=
Content-Type: application/json
content-length: 104

{"messages":[{"code":"0xE04040020008","severity":"Error","message_l10n":"Unable to parse passed url."}]}

Wyślij:
/api/rest/appliance?select=eth_ports
/api/rest/eth_port?select=partner
 

Affected Products

PowerStore
Article Properties
Article Number: 000131120
Article Type: Solution
Last Modified: 07 Jun 2023
Version:  5
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.