In diesem Artikel wird beschrieben, wie Sie beginnen, die REST-API-Dienste zu verwenden, die von der lokalen Edition von axe DevTools Linter oder axe DevTools Linter SaaS bereitgestellt werden. Die Dienste werden von REST-Endpunkten bereitgestellt, daher benötigen Sie Erfahrung mit einem REST-Tool wie Postman, CocoaRestClient oder der VS Code REST Client-Erweiterung. Sie können auch mit einer Programmiersprache wie Python auf die Dienste zugreifen.
Die Unterschiede zwischen den beiden Editionen von axe DevTools Linter (axe DevTools Linter Saas vs. dem lokalen Server) bestehen darin, dass das SaaS-Angebot bei jeder Linter-Anforderung (dem /lint-source Endpunkt) eine Autorisierung über eine API erfordert.
Allgemeinere Informationen zu den vom axe DevTools Linter REST-Dienst bereitgestellten Endpunkten finden Sie in der REST-API-Referenz.
Erste Schritte
Wenn Sie die SaaS-Edition des axe DevTools Linter Server verwenden, müssen Sie zunächst einen API-Schlüssel erhalten. Die notwendigen Schritte zum Abrufen des Schlüssels finden Sie unter Abrufen eines axe DevTools Linter SaaS API-Schlüssels.
Wenn Sie die Konnektivität mit axe DevTools Linter SaaS überprüfen möchten, können Sie ohne API-Schlüssel auf einige der REST-Endpunkte zugreifen. Dieser Fall wird im nächsten Abschnitt behandelt.
Für die lokale Version des axe DevTools Linter-Servers müssen Sie ihn einrichten (wie unter Installieren des lokalen axe DevTools Linter-Servers beschrieben) und dann die IP-Adresse des Servers abrufen. Sie benötigen außerdem den Port, auf dem der Server lauscht (der Standard ist Port 3000).
Testen deiner Verbindung mit curl
Zwei der REST-Endpunkte von axe DevTools Linter SaaS erfordern keine Authentifizierung, sodass Sie Ihre Verbindung testen können, bevor Sie einen API-Schlüssel erhalten.
Wenn du einen einfachen Test durchführen möchtest, ob du auf den Server zugreifen kannst, kannst du curl (oder einen Webbrowser) verwenden. Das folgende Curl-Beispiel zeigt, wie der Status-Endpunkt von axe DevTools Linter SaaS verwendet wird:
curl https://axe-linter.deque.com/status
Sie müssen bei der Verbindung mit axe DevTools Linter SaaS https anstelle von http angeben.
Für die On-Premises-Version geben Sie Folgendes ein:
curl http://<server IP address>:<server port>/status
Sie müssen im obigen Befehl die <Server-IP-Adresse> und den <Server-Port> ersetzen.
Wenn der Server verfügbar ist, antwortet er mit:
Ok
Sie können auch dieselbe URL besuchen (z. B. https://axe-linter.deque.com/status) mit einem Webbrowser und sollten das gleiche Ergebnis sehen.
Das folgende Beispiel zeigt, wie auf den Endpunkt Gesundheitsprüfung zugegriffen wird:
curl https://axe-linter.deque.com/healthcheck
Der Server sollte mit Folgendem antworten:
{
"version": "4.4.0"
}
Wie beim Endpunkt Status können Sie auch https://axe-linter.deque.com/healthcheck Mit einem Webbrowser erhalten Sie das gleiche Ergebnis wie mit curl.
Um die Quelle auf Zugänglichkeitsfehler zu überprüfen, müssen Sie eine POST-Anfrage erstellen. Sie können curl oder ein Tool wie Postman verwenden.
In Postman oder einem anderen REST-Tool müssen Sie einen Header wie den unten gezeigten erstellen:
POST https://axe-linter.deque.com/lint-source
content-type: application/json
authorization: <YOUR API KEY>
Wenn Sie axe DevTools Linter SaaS verwenden, müssen Sie ersetzen
Mit curl würde der entsprechende Header wie oben gezeigt lauten:
curl --request POST --url https://axe-linter.deque.com/lint-source \
--header 'content-type: application/json' \
--header 'authorization: <YOUR API KEY>'
Sie müssen außerdem einen Anforderungstext als JSON-Objekt angeben, bevor die Anforderung abgeschlossen ist:
{
"source": "# Heading\n### Another Heading\n",
"filename": "file.md"
}
Der vollständige curl Befehl lautet:
curl --request POST --url https://axe-linter.deque.com/lint-source \
--header 'content-type: application/json' \
--header 'authorization: <YOUR API KEY>'
--data '{ "source": "# Heading\n### Another Heading\n",
"filename": "file.md" }'
Für den lokal installierten Server müssen Sie das Argument --url ändern und den --header 'authorization: \ entfernen.
Nachfolgend sehen Sie eine Beispielantwort auf die obige Anfrage:
HTTP/1.1 200 OK
Date: Mon, 14 Mar 2022 14:04:19 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 419
Connection: close
X-Powered-By: Express
Surrogate-Control: no-store
Cache-Control: no-store, no-cache, must-revalidate, proxy-revalidate
Pragma: no-cache
Expires: 0
ETag: W/"1a3-cfgZ30xjvW815mLDpbjoGXreu2o"
{
"report": {
"errors": [
{
"ruleId": "heading-order",
"helpURL": "https://dequeuniversity.com/rules/axe/4.4/heading-order?application=axe-linter",
"description": "Ensures the order of headings is semantically correct",
"lineContent": "### Another heading",
"lineNumber": 2,
"linterType": "md",
"column": 1,
"endColumn": 20
}
]
}
}
Da es in diesem Beispiel ein Problem mit der Zugänglichkeit gibt, haben Sie eine Antwort erhalten, die ein Berichtsobjekt enthält, das ein Fehlerarray von Fehlerobjekten enthält. Weitere Informationen zu diesem Antwortobjekt finden Sie unter Antwort .
Wenn Ihr API-Schlüssel bei der Verwendung von axe DevTools Linter SaaS nicht existiert, erhalten Sie eine Antwort wie diese:
HTTP/1.1 404 Not Found
Date: Fri, 11 Mar 2022 22:38:51 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 33
Connection: close
X-Powered-By: Express
Surrogate-Control: no-store
Cache-Control: no-store, no-cache, must-revalidate, proxy-revalidate
Pragma: no-cache
Expires: 0
ETag: W/"21-HAVNeHb+a8RfOcMl419aKM67S20"
{
"error": "No API key found"
}
In diesem Fall können Sie versuchen, Ihren API-Schlüssel neu zu erstellen oder sich an den Deque Helpdesk zu wenden, um Hilfe zu erhalten.
Siehe auch
– Unter API-Schlüssel abrufen finden Sie die erforderlichen Schritte zum Abrufen eines API-Schlüssels, der für die Verwendung von axe DevTools Linter SaaS erforderlich ist. – In der axe DevTools Linter Server REST API-Referenz finden Sie eine Referenz zu den von axe DevTools Linter Server bereitgestellten APIs sowie zusätzliche Optionen für den Endpunkt linter-source . – Das axe DevTools Linter REST API-Beispiel zur Verwendung enthält ein Curl-Beispiel und ein Python-Beispiel , die Sie mit dem axe DevTools Linter Server verwenden können.