NetWorker: Jak sprawić, by odpowiedź JSON interfejsu API REST wiersza poleceń była czytelna dla człowieka

Résumé: Odpowiedzi interfejsu programowania aplikacji (API) REST w wierszu polecenia są w niesformatowanym formacie JSON, który może być trudny do przeanalizowania. Ten artykuł bazy wiedzy zawiera metody formatowania odpowiedzi interfejsu API REST na dane wyjściowe "czytelne dla człowieka". ...

Cet article concerne Cet article ne concerne pas Cet article n’est associé à aucun produit spécifique. Toutes les versions du produit ne sont pas identifiées dans cet article.

Instructions

Wywołania interfejsu API REST (Representational State Transfer) NetWorker można wykonywać z wiersza poleceń na serwerze Linux NetWorker przy użyciu curl . Na przykład:

curl -k -u USERNAME:'PASSWORD' https://localhost:9090/nwrestapi/v3/global/RESTAPI-ENDPOINT
UWAGA: Zastąp USERNAME ciąg kontem użytkownika używanym do uwierzytelniania w NetWorker. Zastąp ciąg PASSWORD hasłem odpowiadającym podanego kontu użytkownika. Zastąp RESTAPI-ENDPOINT z uruchomioną funkcją REST API. Dokumentacja REST API jest dostępna za pośrednictwem: https://developer.dell.com/apis/2378/versions/v3/docs/GettingStarted.md.


Ładunek odpowiedzi w operacji GET jest w formacie JSON. Domyślna odpowiedź może być trudna do przeanalizowania, ponieważ zwykle jest to jedna linia ciągła. Na przykład:

nve:~ # curl -k -u Administrator:'!Password1' https://localhost:9090/nwrestapi/v3/global
{"links":[{"href":"https://localhost:9090/nwrestapi/v3/global/alerts","title":"List of alert messages"},{"href":"https://localhost:9090/nwrestapi/v3/global/auditlogconfig","title":"Audit log configuration"},{"href":"https://localhost:9090/nwrestapi/v3/global/auditlogconfigs","title":"Audit log configurations"},{"href":"https://localhost:9090/nwrestapi/v3/global/backups","title":"List of backups"},{"href":"https://localhost:9090/nwrestapi/v3/global/clients","title":"List of clients"},{"href":"https://localhost:9090/nwrestapi/v3/global/cloudboostappliances","title":"List of cloudboost appliances"},{"href":"https://localhost:9090/nwrestapi/v3/global/datadomainsystems","title":"List of data domain systems"},{"href":"https://localhost:9090/nwrestapi/v3/global/dddevicereplication","title":"DD device replication"},{"href":"https://localhost:9090/nwrestapi/v3/global/devices","title":"List of storage devices"},{"href":"https://localhost:9090/nwrestapi/v3/global/directives","title":"List of backup directives"},{"href":"https://localhost:9090/nwrestapi/v3/global/inspect","title":"Inspect remote/local server"},{"href":"https://localhost:9090/nwrestapi/v3/global/jobgroups","title":"List of job groups"},{"href":"https://localhost:9090/nwrestapi/v3/global/jobindications","title":"List of job indications"},{"href":"https://localhost:9090/nwrestapi/v3/global/jobs","title":"List of jobs"},{"href":"https://localhost:9090/nwrestapi/v3/global/jukeboxes","title":"List of jukeboxes"},{"href":"https://localhost:9090/nwrestapi/v3/global/labels","title":"List of volume label templates"},{"href":"https://localhost:9090/nwrestapi/v3/global/licenseconfig","title":"Server license configuration"},{"href":"https://localhost:9090/nwrestapi/v3/global/licenses","title":"List of license templates"},{"href":"https://localhost:9090/nwrestapi/v3/global/lockbox","title":"Lockbox resource"},{"href":"https://localhost:9090/nwrestapi/v3/global/mediaconfig","title":"Server media configuration"},{"href":"https://localhost:9090/nwrestapi/v3/global/mobilestorageunits","title":"Mobile storage units"},{"href":"https://localhost:9090/nwrestapi/v3/global/nasdevices","title":"List of NAS devices"},{"href":"https://localhost:9090/nwrestapi/v3/global/notifications","title":"List of notification settings"},{"href":"https://localhost:9090/nwrestapi/v3/global/nsrcloneconfig","title":"NSR Clone Configuration"},{"href":"https://localhost:9090/nwrestapi/v3/global/pools","title":"List of pools"},{"href":"https://localhost:9090/nwrestapi/v3/global/probes","title":"List of probes"},{"href":"https://localhost:9090/nwrestapi/v3/global/protectiongroups","title":"List of protection groups"},{"href":"https://localhost:9090/nwrestapi/v3/global/protectionpolicies","title":"List of protection policies"},{"href":"https://localhost:9090/nwrestapi/v3/global/recoverapps","title":"List of recovery applications"},{"href":"https://localhost:9090/nwrestapi/v3/global/recovers","title":"List of recover resources"},{"href":"https://localhost:9090/nwrestapi/v3/global/rules","title":"List of rules"},{"href":"https://localhost:9090/nwrestapi/v3/global/schedules","title":"List of schedules"},{"href":"https://localhost:9090/nwrestapi/v3/global/securityconfig","title":"Server security configuration"},{"href":"https://localhost:9090/nwrestapi/v3/global/serverconfig","title":"Server configuration"},{"href":"https://localhost:9090/nwrestapi/v3/global/servermessages","title":"List of server messages"},{"href":"https://localhost:9090/nwrestapi/v3/global/serverstatistics","title":"Server statistics"},{"href":"https://localhost:9090/nwrestapi/v3/global/sessions","title":"List of save/recover sessions"},{"href":"https://localhost:9090/nwrestapi/v3/global/storagenodes","title":"List of storage nodes"},{"href":"https://localhost:9090/nwrestapi/v3/global/tenants","title":"Restricted data zone protection"},{"href":"https://localhost:9090/nwrestapi/v3/global/timepolicies","title":"List of Time Policies"},{"href":"https://localhost:9090/nwrestapi/v3/global/unconfiguredlibraries","title":"List of unconfigured libraries"},{"href":"https://localhost:9090/nwrestapi/v3/global/usergroups","title":"List of user groups"},{"href":"https://localhost:9090/nwrestapi/v3/global/vmware","title":"View of VMware objects"},{"href":"https://localhost:9090/nwrestapi/v3/global/volumes","title":"List of volumes"}]}

Dane wyjściowe JSON są niesformatowane i mogą być trudne do przeanalizowania; Jednak dane wyjściowe można sformatować do łatwiejszego do odczytania formatu

"ładny druk".W przypadku systemów NetWorker Virtual Edition (NVE) można dodać python -m json.tool do curl . Na przykład:

nve:~ # curl -k -u Administrator:'!Password1' https://localhost:9090/nwrestapi/v3/global | python -m json.tool
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  4374    0  4374    0     0   9751      0 --:--:-- --:--:-- --:--:--  9763
{
    "links": [
        {
            "href": "https://localhost:9090/nwrestapi/v3/global/alerts",
            "title": "List of alert messages"
        },
        {
            "href": "https://localhost:9090/nwrestapi/v3/global/auditlogconfig",
            "title": "Audit log configuration"
        },
        {
            "href": "https://localhost:9090/nwrestapi/v3/global/auditlogconfigs",
            "title": "Audit log configurations"
        },
        {
            "href": "https://localhost:9090/nwrestapi/v3/global/backups",
            "title": "List of backups"
        },
        {
            "href": "https://localhost:9090/nwrestapi/v3/global/clients",
            "title": "List of clients"
        },
        ******* Removed for brevity *******
    ]
}

W przypadku innych systemów Linux można to osiągnąć, dodając jq do curl :

[root@nsr ~]# curl -k -u Administrator:'!Password1' https://localhost:9090/nwrestapi/v3/global | jq
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  4258    0  4258    0     0   7253      0 --:--:-- --:--:-- --:--:--  7241
{
  "links": [
    {
      "href": "https://localhost:9090/nwrestapi/v3/global/alerts",
      "title": "List of alert messages"
    },
    {
      "href": "https://localhost:9090/nwrestapi/v3/global/auditlogconfig",
      "title": "Audit log configuration"
    },
    {
      "href": "https://localhost:9090/nwrestapi/v3/global/auditlogconfigs",
      "title": "Audit log configurations"
    },
    {
      "href": "https://localhost:9090/nwrestapi/v3/global/backups",
      "title": "List of backups"
    },
    {
      "href": "https://localhost:9090/nwrestapi/v3/global/clients",
      "title": "List of clients"
    },
    ******* Removed for brevity *******
  ]
}
UWAGA: jq nie jest dołączony do NetWorker, jest to narzędzie innej firmy, które można zainstalować w systemie. Skonsultuj się z administratorem systemu w celu instalacji jq lub inne narzędzia do formatowania JSON, jak chcesz.

W przypadku hostów z systemem Windows jest mało prawdopodobne, aby w tym celu używany był wiersz poleceń. Zazwyczaj odbywa się to za pomocą programu PowerShell, który wymaga dodatkowych funkcji, często obejmujących skrypty. Większość systemów z systemem Windows używa interfejsu użytkownika, takiego jak Post-Man, do formatowania żądań REST API GET.

Informations supplémentaires

Produits concernés

NetWorker

Produits

NetWorker Family
Propriétés de l’article
Numéro d’article: 000356014
Type d’article: How To
Dernière modification: 12 Aug 2025
Version:  1
Trouvez des réponses à vos questions auprès d’autres utilisateurs Dell
Services de support
Vérifiez si votre appareil est couvert par les services de support.