Schnellstart: Überprüfen der Rechtschreibung mit der Bing-Rechtschreibprüfungs-REST-API und PHP
Warnung
Am 30. Oktober 2020 wurden die Bing-Suche-APIs aus den Azure KI Services in die Bing-Suchdienste verschoben. Diese Dokumentation wird nur zu Referenzzwecken bereitgestellt. Eine aktualisierte Dokumentation finden Sie in der Dokumentation zu den Bing-Suche-APIs. Anweisungen zum Erstellen neuer Azure-Ressourcen für die Bing-Suche finden Sie unter Erstellen einer Ressource für die Bing-Suche über Azure Marketplace.
Verwenden Sie diese Schnellstartanleitung, um die Bing-Rechtschreibprüfungs-REST-API zum ersten Mal aufzurufen. Diese einfache PHP-Anwendung sendet eine Anforderung an die API und gibt eine Liste mit Korrekturvorschlägen zurück.
Diese Anwendung ist zwar in PHP geschrieben, an sich ist die API aber ein RESTful-Webdienst, der mit den meisten Programmiersprachen kompatibel ist.
Voraussetzungen
Erstellen einer Azure-Ressource
Beginnen Sie mit der Verwendung der Bing-Rechtschreibprüfung-API, indem Sie eine der folgenden Azure-Ressourcen erstellen:
Bing-Rechtschreibprüfung-Ressource
- Verfügbar über das Azure-Portal, bis Sie die Ressource löschen.
- Verwenden Sie den Tarif „Free“, um den Dienst zu testen, und führen Sie später für die Produktion ein Upgrade auf einen kostenpflichtigen Tarif durch.
- Die Bing-Rechtschreibprüfung-API wird auch in einigen Tarifen der Bing-Suche v7-Ressource angeboten.
- Verfügbar über das Azure-Portal, bis Sie die Ressource löschen.
- Verwenden Sie in allen Azure KI Services-Instanzen denselben Schlüssel und Endpunkt für Ihre Anwendungen.
Abrufen der Ergebnisse der Bing-Rechtschreibprüfungs-REST-API
Erstellen Sie in Ihrer bevorzugten IDE ein neues PHP-Projekt.
Fügen Sie den unten stehenden Code hinzu.
Ersetzen Sie den
subscriptionKey
-Wert durch einen für Ihr Abonnement gültigen Zugriffsschlüssel.Sie können den globalen Endpunkt im folgenden Code oder den Endpunkt der benutzerdefinierten Unterdomäne verwenden, der im Azure-Portal für Ihre Ressource angezeigt wird.
Führen Sie das Programm aus.
<?php // NOTE: Be sure to uncomment the following line in your php.ini file. // ;extension=php_openssl.dll // These properties are used for optional headers (see below). // define("CLIENT_ID", "<Client ID from Previous Response Goes Here>"); // define("CLIENT_IP", "999.999.999.999"); // define("CLIENT_LOCATION", "+90.0000000000000;long: 00.0000000000000;re:100.000000000000"); $host = 'https://api.cognitive.microsoft.com'; $path = '/bing/v7.0/spellcheck?'; $params = 'mkt=en-us&mode=proof'; $input = "Hollo, wrld!"; $data = array ( 'text' => urlencode ($input) ); // NOTE: Replace this example key with a valid subscription key. $key = 'ENTER KEY HERE'; // The following headers are optional, but it is recommended // that they are treated as required. These headers will assist the service // with returning more accurate results. //'X-Search-Location' => CLIENT_LOCATION //'X-MSEdge-ClientID' => CLIENT_ID //'X-MSEdge-ClientIP' => CLIENT_IP $headers = "Content-type: application/x-www-form-urlencoded\r\n" . "Ocp-Apim-Subscription-Key: $key\r\n"; // NOTE: Use the key 'http' even if you are making an HTTPS request. See: // https://php.net/manual/en/function.stream-context-create.php $options = array ( 'http' => array ( 'header' => $headers, 'method' => 'POST', 'content' => http_build_query ($data) ) ); $context = stream_context_create ($options); $result = file_get_contents ($host . $path . $params, false, $context); if ($result === FALSE) { /* Handle error */ } $json = json_encode(json_decode($result), JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT); echo $json; ?>
Ausführen der Anwendung
Führen Sie die Anwendung aus, indem Sie einen Webserver starten und zu Ihrer Datei navigieren.
JSON-Beispielantwort
Es wird eine erfolgreiche Antwort im JSON-Format zurückgegeben, wie im folgenden Beispiel gezeigt:
{
"_type": "SpellCheck",
"flaggedTokens": [
{
"offset": 0,
"token": "Hollo",
"type": "UnknownToken",
"suggestions": [
{
"suggestion": "Hello",
"score": 0.9115257530801
},
{
"suggestion": "Hollow",
"score": 0.858039839213461
},
{
"suggestion": "Hallo",
"score": 0.597385084464481
}
]
},
{
"offset": 7,
"token": "wrld",
"type": "UnknownToken",
"suggestions": [
{
"suggestion": "world",
"score": 0.9115257530801
}
]
}
]
}