Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel werden Details zur Fehlerbehandlung und Problembehandlung für Ihre Anwendung beschrieben.
Tipp
Stellen Sie beim Erstellen einer SOAP-Anforderungsnachricht sicher, dass die Elemente in der Reihenfolge sind, die in der Web Services Description Language (WSDL) definiert ist. Wenn die erforderlichen Elemente nicht in der richtigen Reihenfolge sind, schlägt der Aufruf fehl. Wenn die optionalen Elemente nicht in der richtigen Reihenfolge sind, schlägt der Aufruf möglicherweise fehl oder die Elemente werden ignoriert. Weitere Informationen finden Sie unter SOAP-XML-Elementreihenfolge.
Häufige API-Fehler
Hier sind einige Tipps für den Umgang mit häufigen Dienstfehlern, die auftreten können. Eine umfassende Liste der Bing Ads API-Fehlercodes finden Sie unter Vorgangsfehlercodes.
Code 105
Gibt in der Regel die Verwendung eines falschen Zugriffstokens (AuthenticationToken-Headerelement) oder Entwicklertokens für die Zielumgebung an. Beispielsweise können Ihre Anmeldeinformationen in der Produktion gültig sein; Beim Anvisieren der Sandbox würden Sie jedoch Code 105 beobachten.
Code 106
Gibt in der Regel an, dass die Anmeldeinformationen für die Zielumgebung korrekt sind, der Benutzer jedoch keinen Zugriff auf eine der in der Anforderung angegebenen Entitäten hat. Dieser Fehler würde beispielsweise beim Aufrufen von SubmitGenerateReportRequest auftreten, wenn der Benutzer keine Berechtigungen für das angegebene Konto hat.
Code 117
Sollte das Dienstaufruflimit überschritten werden, wird der folgende Fehler angezeigt:
- Numerischer Fehlercode: 117
- Symbolischer Fehlercode: CallRateExceeded
- Meldung: Sie haben die Anzahl der Anrufe überschritten, die Sie in einer Minute tätigen dürfen. Bitte reduzieren Sie die Anzahl der Anrufe, die Sie pro Minute tätigen.
Wenn Sie diesen Fehler beobachten, können Sie die Anforderung unter dem Limit nach einer Wartezeit von 60 Sekunden erneut übermitteln.
Interner Fehler
Gelegentlich gibt der Dienst möglicherweise einen internen Fehler wie folgt zurück:
<OperationError>
<Code>0</Code>
<Details i:nil="true"/>
<ErrorCode>InternalError</ErrorCode>
<Message>An internal error has occurred.</Message>
</OperationError>
Hier sind einige mögliche interne Fehlerszenarien:
- Dies ist ein vorübergehendes Systemproblem, und Sie können nichts tun, was Sie tun können. Wenn derselbe Anruf zuvor funktioniert hat, versuchen Sie es bitte später erneut, falls wir das Problem serverseitig behoben haben.
- Der Vorgang wurde keinem umsetzbaren Fehlercode ordnungsgemäß zugeordnet. Im Idealfall sollte die Bing Ads-API einen umsetzbaren Fehlercode zurückgeben, wenn Clients etwas tun können, um das Problem zu beheben. Wenn Sie den internen Fehler konsistent beobachten, wenden Sie sich mit Details an den Support .
HTTP 500
Alle Bing Ads API-Dienstvorgänge entsprechen der Spezifikation Simple Object Access Protocol (SOAP) 1.1, der Fehler mit einem HTTP-500-Code zurückgegeben werden. Siehe z. B. Folgendes.
HTTP/1.1 500 Internal Server Error
Dies ist an und für sich nicht repräsentativ für einen umsetzbaren Code, und Sie sollten die Fehlerdetails überprüfen, um weitere Informationen zum spezifischen Fehler zu erhalten.
Abstrakte Klasse kann nicht erstellt werden
Sie können keine Instance einer Basisklasse wie Ad erstellen. Sie müssen eine der abgeleiteten Klassen instanziieren, z. B. ExpandedTextAd.
Warum erhalte ich eine leere URL aus dem Reporting-API-Aufruf?
Selbst wenn der Berichtsstatus auf Erfolg festgelegt ist, kann das ReportDownloadUrl-Element null sein, wenn keine Daten für die übermittelten Berichtsparameter verfügbar sind. Wenn in der Microsoft Advertising-Webanwendung Leistungsdaten für denselben Datumsbereich und dieselben Filterkriterien angezeigt werden, wenden Sie sich mit Details an den Support .
Häufige OAuth-Fehler
Hier sind einige Tipps für den Umgang mit häufig auftretenden Autorisierungsfehlern.
AADSTS-Fehler
Die AADSTS-Fehlercodes und -meldungen können sich ändern. Die aktuellsten Informationen finden Sie auf der Seite, auf der https://login.microsoftonline.com/error Sie AADSTS-Fehlerbeschreibungen, Korrekturen und einige vorgeschlagene Problemumgehungen finden.
Suchen Sie nach dem numerischen Teil des zurückgegebenen Fehlercodes. Wenn Sie z. B. den Fehlercode "AADSTS650052" erhalten haben, suchen Sie nach https://login.microsoftonline.com/error "650052". Sie können einen bestimmten Fehler auch direkt verknüpfen, indem Sie der URL die Fehlercodenummer hinzufügen: https://login.microsoftonline.com/error?code=650052.
Einige der häufigsten AADSTS-Fehler, z. B. AADSTS50011, AADSTS650052 und AADSTS700016, werden im Folgenden ausführlicher beschrieben.
AADSTS50011
Der AADSTS50011 Fehler kann innerhalb einer JSON-Zeichenfolge zurückgegeben werden, wenn Zugriffstoken mit dem Microsoft Identity Platform Endpunkt wie folgt angefordert werden.
{"error":"invalid_client","error_description":"AADSTS50011: The reply url specified in the request
does not match the reply urls configured for the application: 'foo'.\r\nTrace ID:
x\r\nCorrelation ID: x\r\nTimestamp: 2019-05-10
17:18:23Z","error_codes":[50011],"timestamp":"2019-05-10
17:18:23Z","trace_id":"x","correlation_id":"x"}
Ein Fehler wegen eines ungültigen Umleitungs-URI kann auch als Text im Browserfenster zurückgegeben werden, wenn Sie wie folgt die Zustimmung des Benutzers anfordern.
invalid_request: Der angegebene Wert für den Eingabeparameter 'redirect_uri' ist ungültig. Der erwartete Wert ist ein URI, der einem Umleitungs-URI entspricht, der für diese Clientanwendung registriert ist.
Wenn Sie diesen Fehler beobachten, ist entweder Ihr Umleitungs-URI nicht ordnungsgemäß registriert, oder Ihre Anwendung verwendet nicht den registrierten Umleitungs-URI.
AADSTS650052
Der 650052 Fehlercode kann mit der Meldung "Die App benötigt Zugriff auf einen Dienst ("https://ads.microsoft.com") dass Ihre organization "{organization}" nicht abonniert oder aktiviert hat."
Wenn Sie diesen Fehler beobachten, stellen Sie sicher, dass mindestens einer der Administratorbenutzer Ihres Azure AAD-Mandanten für Geschäftskonten in der Microsoft Advertising-Webanwendung hinzugefügt und aktiviert ist. Wenden Sie sich an den Support, um weitere Unterstützung zu erhalten.
AADSTS700016
Der 700016 Fehlercode kann mit der Meldung "Anwendung mit Bezeichner '{appIdentifier}' wurde im Verzeichnis '{tenantName}' nicht gefunden" zurückgegeben werden.
Wenn Sie über eine ältere Anwendungs-ID (auch Client-ID genannt) verfügen, die als Hexadezimalwert formatiert ist, z. B. 0000000012345A67, müssen Sie eine neue Anwendung registrieren . Gültige Anwendungs-IDs für die Verwendung mit der Microsoft Identity Platform sind als GUID mit Bindestrichen formatiert, z. B. 00001111-aaaa-2222-bbbb-3333cccc4444. Wenn im Azure-Portal – App-Registrierungen – keine vorhandene App angezeigt wird, ist dies ein weiterer Hinweis darauf, dass Sie sie durch eine neue App ersetzen sollten.
Ungültiger Umleitungs-URI
Ein ungültiger Umleitungs-URI-Fehler kann innerhalb einer JSON-Zeichenfolge zurückgegeben werden, wenn Zugriffstoken mit dem Live Connect-Endpunkt wie folgt angefordert werden.
{"error":"invalid_grant","error_description":"The provided value for the 'redirect_uri' is not
valid. The value must exactly match the redirect URI used to obtain the authorization code."}
Ein Fehler wegen eines ungültigen Umleitungs-URI kann auch als Text im Browserfenster zurückgegeben werden, wenn Sie wie folgt die Zustimmung des Benutzers anfordern.
invalid_request: Der angegebene Wert für den Eingabeparameter 'redirect_uri' ist ungültig. Der erwartete Wert ist ein URI, der einem Umleitungs-URI entspricht, der für diese Clientanwendung registriert ist.
Wenn Sie diesen Fehler beobachten, ist entweder Ihr Umleitungs-URI nicht ordnungsgemäß registriert, oder Ihre Anwendung verwendet nicht den registrierten Umleitungs-URI.
Ungültige Erteilung
Wenn Sie versuchen, das Token mithilfe eines Bereichs zu aktualisieren, dem der Benutzer nicht zustimmt, kann ein invalid_grant Fehler zurückgegeben werden.
{
"error":"invalid_grant",
"error_description":"AADSTS70000: The request was denied because one or more scopes requested are unauthorized or expired. The user must first sign in and grant the client application access to the requested scope."
}
Ein invalid_grant Fehler kann auch zurückgegeben werden, wenn der Umleitungs-URI ungültig ist, das Aktualisierungstoken abgelaufen ist, der Benutzer sein Kennwort geändert hat oder das Token anderweitig widerrufen wurde.
{"error":"invalid_grant","error_description":"The user could not be authenticated or the grant is expired. The user must first sign in and if needed grant the client application access to the requested scope."}
Microsoft kann jederzeit ohne vorherige Ankündigung bestimmen, dass die Zustimmung des Benutzers erneut erteilt werden soll; Einige Szenarien liegen jedoch in Ihrer Kontrolle. Clients, die Apps auf Diensten ausführen, die sich über mehrere Regionen und Geräte erstrecken, wie Microsoft Azure, sollten eine Webanwendung mit geheimem Clientschlüssel registrieren. Sie können ein Aktualisierungstoken auf einem Gerät abrufen und es auf einem anderen aktualisieren, solange Sie über dieselbe Client-ID und denselben geheimen Clientschlüssel verfügen. Wenn Sie eine öffentliche Anwendung ohne einen geheimen Clientschlüssel registrieren, können Sie ein Aktualisierungstoken nicht geräteübergreifend verwenden. Ein vertrauliches Token ist an den geheimen Clientschlüssel gebunden. Wenn Sie eine öffentliche Clientanwendungs-ID ohne geheimen Clientschlüssel verwendet hätten, um ein Aktualisierungstoken in den USA abzurufen, und dann später versucht hätten, das Token in der EU-Region zu aktualisieren, würden Sie den invalid_grant Fehler beobachten.
Anwendung nicht gefunden oder nicht autorisierter Client
Wenn Sie einen Fehler wie "unauthorized_client: Der Client existiert nicht" oder "Anwendung mit Bezeichner 'foo' wurde im Verzeichnis 'bar' nicht gefunden" beobachten, stellen Sie sicher, dass die Anwendung für die richtige Zielumgebung, d. h. Produktion oder Sandbox, noch vorhanden ist.
Ein Fehler "Anwendung nicht gefunden" kann zurückgegeben werden, wenn Sie den Microsoft Identity Platform-Endpunkt mit einer Live SDK-Anwendungs-ID im kurzen Hexadezimalformat, z. B. 0000000012345A67, aufrufen. In diesem Fall müssen Sie eine neue Anwendung registrieren . Gültige Microsoft Identity Platform-Anwendungs-IDs sind als GUID mit Bindestrichen formatiert, z. B. 00001111-aaaa-2222-bbbb-3333cccc4444.
Wenn Sie die App im Azure-Portal registriert haben, stellen Sie im Abschnitt Unterstützte Kontotypen sicher, dass Sie Konten in einem beliebigen Organisationsverzeichnis und persönliche Microsoft-Konten ausgewählt haben. (Bitte siehe Registrieren einer Anwendung) Wenn Sie diese Option beim erstmaligen Setup nicht ausgewählt haben, fordert das Azure-Portal möglicherweise die Registrierung einer neuen Anwendung auf.
Anwendung nicht als mehrinstanzenfähige Anwendung konfiguriert
Möglicherweise wird der folgende Fehler angezeigt, wenn Ihre registrierte Anwendung auf einen bestimmten Mandanten beschränkt ist.
Application 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxxx' is not configured as a multi-tenant application. Usage of the /common endpoint is not supported for such applications created after '10/15/2018'. Use a tenant-specific endpoint or configure the application to be multi-tenant.
Wenn Sie die App im Azure-Portal registriert haben, stellen Sie im Abschnitt Unterstützte Kontotypen sicher, dass Sie Konten in einem beliebigen Organisationsverzeichnis und persönliche Microsoft-Konten ausgewählt haben. (Bitte siehe Registrieren einer Anwendung) Wenn Sie diese Option beim erstmaligen Setup nicht ausgewählt haben, fordert das Azure-Portal möglicherweise die Registrierung einer neuen Anwendung auf.
Kontaktieren des Supports
Entwicklern steht das Microsoft Q&A-Forum zur Verfügung, in dem sie Fragen zu den Bing Ads-APIs und Microsoft Advertising-Skripts stellen und beantworten können. Microsoft überwacht die Foren und beantwortet Fragen, die die Community noch nicht beantwortet hat.
Wichtig
Um sicherzustellen, dass Ihre Frage angezeigt wird, markieren Sie sie mit "advertising-api".
Wenn die Untersuchung vertrauliche Konto- oder persönliche Details umfasst oder wenn Sie über Microsoft Q&A nicht die Informationen finden, die Sie zur Lösung Ihres Problems benötigen, wenden Sie sich an den Microsoft Advertising Support.
Tipp
Um die Untersuchung zu beschleunigen, stellen Sie dem Support Details wie Entwicklungsumgebung, Fehlerhäufigkeit und Schritte zum Reproduzieren des Fehlers zur Verfügung.
Wenn Sie Hilfe bei Aufrufen der Bing Ads API-Dienste benötigen, gehen Sie bitte diese Prüfliste durch und geben Sie die Ergebnisse an das Supportteam weiter.
- Wer versucht der Benutzer, den Dienst aufzurufen, z. B. wie lautet die Anmelde-E-Mail-Adresse?
- Wie lautet die Konto-ID oder Kontonummer, auf die der Benutzer zuzugreifen versucht?
- Welche Schritte sind erforderlich, um den Fehler zu reproduzieren? Schließen Sie die vollständige Anfrage, die Antwort und den Zeitstempel ein, mit Ausnahme privater Anmeldeinformationen, z. B. des Zugriffstokens.
- Zielt auf die Produktions- oder Sandboxumgebung ab? Stellen Sie sicher, dass Sie die richtigen App-Registrierungs- und Autorisierungsendpunkte für die Produktion und die Sandbox verwenden. Achten Sie auch darauf, die richtigen Webdienstadressen für dieselbe Umgebung zu verwenden.
- Geben Sie an, ob dieselbe Anforderung in der Vergangenheit für Sie funktioniert hat, d. h. ob es sich um eine frühere Performance handelt.
- Geben Sie an, ob Sie das Problem jetzt jedes Mal oder zeitweise reproduzieren können.
- Bei Problemen im Zusammenhang mit dem Massen- oder Berichtsdienst schließen Sie bitte die Ablaufverfolgung für die Anforderungs- und Status-Abrufvorgänge ein.
- Bei einem Authentifizierungsproblem im Zusammenhang mit dem Fehlercode 105 oder 106 geben Sie bitte auch die System-ID für die Anmeldeinformationen des Microsoft Advertising-Benutzers an. Die Benutzer-ID für den aktuellen Benutzer finden Sie im Schnellstarthandbuch .
Wenn Sie Hilfe beim Abrufen von Zugriffs- und Aktualisierungstoken für die Authentifizierung mit OAuth benötigen, gehen Sie bitte diese Prüfliste durch und teilen Sie die Ergebnisse dem Supportteam mit.
- Wen versucht der Benutzer zu authentifizieren, z. B. wie lautet die Anmelde-E-Mail-Adresse?
- Wie lautet die Konto-ID oder Kontonummer, auf die der Benutzer zuzugreifen versucht?
- Welche Schritte sind erforderlich, um den Fehler zu reproduzieren? Schließen Sie die vollständige Anforderung, die Antwort und den Zeitstempel ein, mit Ausnahme privater Anmeldeinformationen, z. B. Zugriffstoken und geheimer Clientschlüssel.
- Zielt auf die Produktions- oder Sandboxumgebung ab? Stellen Sie sicher, dass Sie die richtigen App-Registrierungs- und Autorisierungsendpunkte für die Produktion und die Sandbox verwenden. Achten Sie auch darauf, die richtigen Webdienstadressen für dieselbe Umgebung zu verwenden.
- Haben Sie eine native oder Webanwendung registriert ? Clients, die Apps auf Diensten ausführen, die sich über mehrere Regionen und Geräte erstrecken, wie Microsoft Azure, sollten eine Webanwendung mit geheimem Clientschlüssel registrieren.
- Wie lautet Ihre registrierte Anwendungs-ID (client_id)? Wenn Sie auch über ein Anwendungsgeheimnis (Application Secret, client_secret) verfügen, vergewissern Sie sich, dass Sie es festlegen, wenn Sie Zugriffstoken vom Autorisierungsendpunkt anfordern, aber geben Sie es nicht an Dritte weiter.
- Führen Sie eine OAuth-Diagnoseintegritätsprüfung aus. Können Sie erfolgreich ein Zugriffstoken erhalten und das Schnellstarthandbuch für Produktion oder Sandbox abschließen? Falls nicht, wo schlägt die Authentifizierung fehl und was ist der Fehler?
Übersicht über das Fehlermodell
Wenn ein Bing Ads API-Dienstvorgang fehlschlägt, wird ein Dienstfehler zurückgegeben, z. B. kann der Kundenverwaltungsdienst ApiFault zurückgeben. Die Fehlerausnahmen umfassen ein oder mehrere Fehlerobjekte. Die Fehlerobjekte enthalten die Details dazu, warum der Dienstvorgang fehlgeschlagen ist, sowie einen Code, der den Fehler eindeutig identifiziert. Eine Liste der Fehlercodes finden Sie unter Bing Ads API-Vorgangsfehlercodes.
Verfügbare Fehler- und Datenobjekte variieren je nach Dienst. Diese Tabelle beschreibt das Fehlermodell und Links zu Fehlerdatenobjekten für jeden Dienst.
| Dienst | Beschreibung |
|---|---|
| Ad Insight | Alle Vorgänge zur Anzeigenerkenntnis können AdApiFaultDetail und ApiFaultDetail auslösen. |
| Masse | Alle Massenvorgänge können AdApiFaultDetail und ApiFaultDetail auslösen. |
| Kampagnenverwaltung | Alle Kampagnenverwaltungsvorgänge können AdApiFaultDetail auslösen. Einige Kampagnenverwaltungsvorgänge können auch ApiFaultDetail oder EditorialApiFaultDetail auslösen. Weitere Informationen finden Sie unter Datenobjekte zur Kampagnenverwaltung. |
| Kundenabrechnung | Alle Kundenabrechnungsvorgänge können AdApiFaultDetail und ApiFault auslösen. Einige Kundenabrechnungsvorgänge können auch ApiBatchFault auslösen. |
| Customer Relationship Management (CRM) | Alle Kundenverwaltungsvorgänge können AdApiFaultDetail und ApiFault auslösen. |
| Reporting | Alle Berichtsvorgänge können AdApiFaultDetail und ApiFaultDetail auslösen. |
Hinweis
Alle Fehlerobjekte werden vom ApplicationFault-Objekt abgeleitet. Das ApplicationFault-Objekt definiert das TrackingId-Element , das den Protokolleintrag, der die Details des API-Aufrufs enthält, eindeutig identifiziert. Wenn Sie sich an den Support wenden müssen, geben Sie bitte die Tracking-ID mit dem Datum und der Uhrzeit an, zu dem Sie den Dienstvorgang aufgerufen haben.
Teilweise erfolgreich
Teilerfolgreicher bedeutet, dass beim Hinzufügen, Aktualisieren oder Löschen von Entitäten in Batches von einer oder mehreren Entitäten der Vorgang für einige erfolgreich sein kann und für einen Teil des Batches fehlschlägt.
Teilerfolg mit dem Massendienst
Wenn Sie Datensätze in einer Massendateihochladen, kann der Upload für einige Datensätze erfolgreich sein und für andere im Batch fehlschlagen. Wenn Sie GetBulkUploadUrl aufrufen, können Sie auswählen, ob Sie Fehler in der Upload-Ergebnisdatei erhalten möchten oder nicht.
Hinweis
Microsoft Advertising unterstützt keine "Alles-oder-Nichts"-Fehlerbehandlung. Sie müssen das auf der Client-Seite erledigen.
Teilerfolg mit dem Kampagnenverwaltungsdienst
Für die meisten Entitäten wird der Teilerfolg beim Aufrufen von Campaign Management-Dienstvorgängen unterstützt. Für jeden Listenindex, dem keine Entität hinzugefügt wurde, ist das entsprechende Element NULL. Das PartialErrors-Element stellt ein Array von BatchError-Objekten dar, die Details für alle Entitäten enthalten, die nicht erfolgreich hinzugefügt, aktualisiert oder gelöscht wurden. Die Liste enthält nur einen BatchError für erfolglose Versuche und keine Null-Elemente am Index jeder erfolgreich hinzugefügten Entität. In ähnlicher Weise geben einige Vorgänge NestedPartialErrors als eine Liste von BatchErrorCollection oder einen zweidimensionalen BatchError zurück.
Hinweis
Der Vorgang ApplyProductPartitionActions enthält PartialErrors in der Antwort. Ein teilweiser Erfolg wird jedoch nicht unterstützt. Entweder ist der gesamte Satz der angeforderten Aktionen erfolgreich, und die Antwortliste AdGroupCriterionIds ist vollständig aufgefüllt, oder alle schlagen fehl, und die Antwortliste PartialErrors ist vollständig aufgefüllt.
.NET-Ausnahmen
Wenn Sie das Bing Ads .NET SDK verwenden, sollte Ihre Anwendung darauf vorbereitet sein, die unten beschriebenen Bing Ads API-Service-Level-Ausnahmen, WCF-Ausnahmen und Bing Ads .NET SDK-Ausnahmen zu behandeln.
Informationen zur Problembehandlung bei . NET-Anwendungen finden Sie unter .NET SDK-Problembehandlung.
WCF-Ausnahmen
Generische SOAP-Fehler, die nicht spezifisch für die Bing Ads-API sind, können ebenfalls ausgelöst werden und sollten von Ihrer Anwendung abgefangen werden. .NET-Anwendungen können beispielsweise Windows Communication Foundation (WCF)-Ausnahmen wie Exception, TimeoutException und CommunicationException auslösen. Informationen zu Ausnahmen, die Sie von WCF erwarten sollten, finden Sie unter Erwartete Ausnahmen.
Sie sollten die Close-Methode nicht im finally-Block aufrufen, um das Dienstobjekt freizugeben. Der Einwand ist, dass die Close-Methode Ausnahmen auslösen kann. Wenn Close eine Ausnahme auslöst, müssen Sie die Abort-Methode aufrufen, um sicherzustellen, dass alle Ressourcen freigegeben werden. Andernfalls könnten Ressourcen auf dem Server verloren gehen. Die empfohlene Vorgehensweise ist, Close innerhalb des try-blocks aufzurufen und Abort von den abgefangenen Ausnahmen aus aufzurufen.
Aus dem gleichen Grund wird die Verwendung der using-Anweisung nicht empfohlen. Weitere Informationen finden Sie unter Vermeiden von Problemen mit der Using-Anweisung.
.NET SDK-Ausnahmen
Die Bing Ads .NET SDK-Ausnahmen abstrahieren einige der Ausnahmen vom Servicelevel. Um die meisten Ausnahmen zu umgehen, können Sie es erneut versuchen. Sie können sich auch an den Support wenden, wenn das Problem nach mehreren Wiederholungsversuchen weiterhin besteht.
| Ausnahme | Namespaces | Beschreibung |
|---|---|---|
| CouldNotDownloadResultFileException | Microsoft.BingAds | Diese Ausnahme wird vom internen SDK HttpService ausgelöst, nachdem beim Herunterladen einer Massen- oder Berichtsergebnisdatei ein Fehler aufgetreten ist. |
| CouldNotUploadFileException | Microsoft.BingAds | Diese Ausnahme wird vom internen SDK HttpService nach einem fehlgeschlagenen Versuch, eine Massendatei hochzuladen, ausgelöst. |
| OAuthTokenRequestException | Microsoft.BingAds | Diese Ausnahme wird ausgelöst, wenn ein Fehler vom Autorisierungsserver des Microsoft-Kontos zurückgegeben wurde. Um diese Ausnahme zu beheben, können Sie zunächst die Stapelüberwachung überprüfen, um die Fehlerdetails anzuzeigen, falls Sie Maßnahmen ergreifen können, um das Problem zu beheben. Sie könnten beispielsweise eine ungültige Client-ID angegeben haben. |
| BulkOperationCouldNotBeCompletedException | Microsoft.BingAds.V13.Bulk | Diese Ausnahme wird ausgelöst, wenn versucht wurde, eine abgeschlossene Massenergebnisdatei abzurufen, und der Massendienst einen fehlgeschlagenen Status zurückgibt. |
| BulkOperationInProgressException | Microsoft.BingAds.V13.Bulk | Diese Ausnahme wird ausgelöst, wenn versucht wurde, eine Massenergebnisdatei herunterzuladen, die noch nicht verfügbar ist. |
| CouldNotGetBulkOperationStatusException | Microsoft.BingAds.V13.Bulk | Diese Ausnahme wird ausgelöst, wenn der BulkServiceManager den Status des Upload- oder Downloadvorgangs nach mehreren Wiederholungen nicht abrufen konnte. |
| CouldNotSubmitBulkDownloadException | Microsoft.BingAds.V13.Bulk | Diese Ausnahme wird vom BulkServiceManager ausgelöst, wenn der aufgerufene DownloadCampaignsByAccountIds-Dienstvorgang keine gültige Antwort zurückgibt. |
| CouldNotSubmitBulkUploadException | Microsoft.BingAds.V13.Bulk | Diese Ausnahme wird vom BulkServiceManager ausgelöst, wenn der aufgerufene GetBulkUploadUrl-Dienstvorgang keine gültige Antwort zurückgibt. |
| EntityReadException | Microsoft.BingAds.V13.Bulk | Diese Ausnahme wird ausgelöst, wenn versucht wird, Entitäten aus einer Massendatei mithilfe von BulkFileReader zu lesen. Um diese Ausnahme zu beheben, können Sie zunächst die Stapelüberwachung überprüfen, um die Fehlerdetails anzuzeigen, falls Sie Maßnahmen ergreifen können, um das Problem zu beheben. So kann beispielsweise die Massendatei, aus der Sie lesen möchten, einen ungültigen Wert in einem der Felder enthalten. |
| EntityWriteException | Microsoft.BingAds.V13.Bulk | Diese Ausnahme wird ausgelöst, wenn versucht wird, Entitäten mithilfe von BulkFileWriter in eine Massendatei zu schreiben. Um diese Ausnahme zu beheben, können Sie zunächst die Stapelüberwachung überprüfen, um die Fehlerdetails anzuzeigen, falls Sie Maßnahmen ergreifen können, um das Problem zu beheben. Möglicherweise haben Sie einen ungültigen Wert für eine der Uploadentitäten angegeben. |
| CouldNotGetReportingDownloadStatusException | Microsoft.BingAds.V13.Reporting | Diese Ausnahme wird ausgelöst, wenn der ReportingServiceManager-Manager den Status des Downloadvorgangs nach mehreren Versuchen nicht abrufen konnte. |
| CouldNotSubmitReportingDownloadException | Microsoft.BingAds.V13.Reporting | Diese Ausnahme wird vom ReportingServiceManager ausgelöst, wenn der von ihm aufgerufene SubmitGenerateReport-Dienstvorgang keine gültige Antwort zurückgibt. |
| ReportingOperationCouldNotBeCompletedException | Microsoft.BingAds.V13.Reporting | Diese Ausnahme wird ausgelöst, wenn versucht wurde, eine abgeschlossene Berichtsergebnisdatei abzufragen, und der Berichtsdienst einen fehlgeschlagenen Status zurückgibt. |
| ReportingOperationInProgressException | Microsoft.BingAds.V13.Reporting | Diese Ausnahme wird ausgelöst, wenn versucht wurde, eine Berichtsergebnisdatei herunterzuladen, die noch nicht verfügbar ist. |
Problembehandlung für .NET SDK
Sofern kein bekanntes Dienstproblem vorliegt, liegt der Fehler bei einem Aufruf in der Regel daran, dass die SOAP-Elemente ungültig oder nicht in der richtigen Reihenfolge sind oder Sie die falschen Anmeldeinformationen angegeben haben. Um beide Fälle zu überprüfen, sollten Sie den SOAP-Umschlag der Anforderung erfassen. Sie können sich an den Support wenden oder Ihre Aufzeichnung mit dem entsprechenden SOAP-Beispiel vergleichen, das für jeden Dienstvorgang dokumentiert ist.
SDK-Ablaufverfolgung
Sie können das Bing Ads .NET SDK TraceBehavior verwenden, um die SOAP-Anforderung und -Antwort zu protokollieren.
Hinweis
TraceBehavior ist mit Bing Ads .NET SDK Version 12.13.5 und höher verfügbar.
using (StreamWriter streamWriter = new StreamWriter(@"tracelog.txt"))
{
streamWriter.AutoFlush = true;
// For console output instead of file output, use new TextWriterTraceListener(Console.Out).
// If you only need debug output, you can remove the StreamWriter, TraceListener, and AddTraceSource.
TraceListener traceListener = new TextWriterTraceListener(streamWriter.BaseStream);
IServiceCollection serviceCollection = new ServiceCollection();
serviceCollection.AddLogging(builder => builder
.AddTraceSource(new SourceSwitch("ProgramSourceSwitch", "verbose"), traceListener)
.AddDebug()
.AddFilter(level => level >= LogLevel.Debug)
);
var iLoggerFactory = serviceCollection.BuildServiceProvider().GetService<ILoggerFactory>();
TraceBehavior.Instance.AddMessageInspector(
new LogMessageInspector(
iLoggerFactory.CreateLogger<Program>(),
LogLevel.Information)
);
Authentication authentication = AuthenticateWithOAuth();
// This utiltiy operation sets the global authorization data instance
// to the first account that the current authenticated user can access.
SetAuthorizationDataAsync(authentication).Wait();
// Run all of the examples that are included above.
foreach (var example in _examples)
{
example.RunAsync(_authorizationData).Wait();
}
streamWriter.Flush();
traceListener.Flush();
}
Das vollständige Programm mit dem obigen Codeausschnitt finden Sie in Program.cs.
Fiddler-Optionen
Sie können die folgenden Schritte ausführen, um die SOAP-Umschläge aus einer .NET-Anwendung mit einem Drittanbietertool wie Fiddler zu erfassen.
- Exportieren Sie nach der Installation von Fiddler das Fiddler-Zertifikat aus dem Stammzertifikatspeicher.
- Klicken Sie auf "Extras>","Fiddler-Optionen".
- Wählen Sie die Registerkarte HTTPS aus, und aktivieren Sie das Kontrollkästchen "HTTPS-Datenverkehr entschlüsseln ".
- Klicken Sie auf OK, und befolgen Sie dann die Anweisungen, um das Fiddler-Zertifikat zu exportieren.
Java-Ausnahmen
Wenn Sie das Bing Ads Java SDK verwenden, sollte Ihre Anwendung darauf vorbereitet sein, die im Folgenden beschriebenen Bing Ads API-Service-Level-Ausnahmen und Bing Ads Java SDK-Ausnahmen zu behandeln.
Informationen zur Problembehandlung bei Java-Anwendungen finden Sie unter Problembehandlung für Java SDK.
Java SDK-Ausnahmen
Die Bing Ads Java SDK-Ausnahmen abstrahieren einige der Ausnahmen auf Serviceebene. Um die meisten Ausnahmen zu umgehen, können Sie es erneut versuchen. Sie können sich auch an den Support wenden, wenn das Problem nach mehreren Wiederholungsversuchen weiterhin besteht.
| Ausnahme | Namespaces | Beschreibung |
|---|---|---|
| CouldNotDownloadResultFileException | com.microsoft.bingads | Diese Ausnahme wird vom internen SDK HttpService ausgelöst, nachdem beim Herunterladen einer Massen- oder Berichtsergebnisdatei ein Fehler aufgetreten ist. |
| CouldNotUploadFileException | com.microsoft.bingads | Diese Ausnahme wird vom internen SDK HttpService nach einem fehlgeschlagenen Versuch, eine Massendatei hochzuladen, ausgelöst. |
| OAuthTokenRequestException | com.microsoft.bingads | Diese Ausnahme wird ausgelöst, wenn ein Fehler vom Autorisierungsserver des Microsoft-Kontos zurückgegeben wurde. Um diese Ausnahme zu beheben, können Sie zunächst die Stapelüberwachung überprüfen, um die Fehlerdetails anzuzeigen, falls Sie Maßnahmen ergreifen können, um das Problem zu beheben. Sie könnten beispielsweise eine ungültige Client-ID angegeben haben. |
| BulkDownloadCouldNotBeCompletedException | com.microsoft.bingads.V13.bulk | Diese Ausnahme wird ausgelöst, wenn versucht wurde, eine abgeschlossene Massendownload-Ergebnisdatei abzurufen, und der Massendienst einen fehlgeschlagenen Status zurückgibt. |
| BulkOperationInProgressException | com.microsoft.bingads.V13.bulk | Diese Ausnahme wird ausgelöst, wenn versucht wurde, eine Massenergebnisdatei herunterzuladen, die noch nicht verfügbar ist. |
| BulkUploadCouldNotBeCompletedException | com.microsoft.bingads.V13.bulk | Diese Ausnahme wird ausgelöst, wenn versucht wurde, eine abgeschlossene Ergebnisdatei für den Massenupload abzufragen, und der Massendienst einen fehlgeschlagenen Status zurückgibt. |
| CouldNotGetBulkOperationStatusException | com.microsoft.bingads.V13.bulk | Diese Ausnahme wird ausgelöst, wenn der BulkServiceManager den Status des Upload- oder Downloadvorgangs nach mehreren Wiederholungen nicht abrufen konnte. |
| CouldNotSubmitBulkDownloadException | com.microsoft.bingads.V13.bulk | Diese Ausnahme wird vom BulkServiceManager ausgelöst, wenn der aufgerufene DownloadCampaignsByAccountIds-Dienstvorgang keine gültige Antwort zurückgibt. |
| CouldNotSubmitBulkUploadException | com.microsoft.bingads.V13.bulk | Diese Ausnahme wird vom BulkServiceManager ausgelöst, wenn der aufgerufene GetBulkUploadUrl-Dienstvorgang keine gültige Antwort zurückgibt. |
| EntityReadException | com.microsoft.bingads.V13.bulk | Diese Ausnahme wird ausgelöst, wenn versucht wird, Entitäten aus einer Massendatei mithilfe von BulkFileReader zu lesen. Um diese Ausnahme zu beheben, können Sie zunächst die Stapelüberwachung überprüfen, um die Fehlerdetails anzuzeigen, falls Sie Maßnahmen ergreifen können, um das Problem zu beheben. So kann beispielsweise die Massendatei, aus der Sie lesen möchten, einen ungültigen Wert in einem der Felder enthalten. |
| EntityWriteException | com.microsoft.bingads.V13.bulk | Diese Ausnahme wird ausgelöst, wenn versucht wird, Entitäten mithilfe von BulkFileWriter in eine Massendatei zu schreiben. Um diese Ausnahme zu beheben, können Sie zunächst die Stapelüberwachung überprüfen, um die Fehlerdetails anzuzeigen, falls Sie Maßnahmen ergreifen können, um das Problem zu beheben. Möglicherweise haben Sie einen ungültigen Wert für eine der Uploadentitäten angegeben. |
| CouldNotGetReportingDownloadStatusException | com.microsoft.bingads.V13.reporting | Diese Ausnahme wird ausgelöst, wenn der ReportingServiceManager-Manager den Status des Downloadvorgangs nach mehreren Versuchen nicht abrufen konnte. |
| CouldNotSubmitReportingDownloadException | com.microsoft.bingads.V13.reporting | Diese Ausnahme wird vom ReportingServiceManager ausgelöst, wenn der von ihm aufgerufene SubmitGenerateReport-Dienstvorgang keine gültige Antwort zurückgibt. |
| ReportingOperationCouldNotBeCompletedException | com.microsoft.bingads.V13.reporting | Diese Ausnahme wird ausgelöst, wenn versucht wurde, eine abgeschlossene Berichtsergebnisdatei abzufragen, und der Berichtsdienst einen fehlgeschlagenen Status zurückgibt. |
| ReportingOperationInProgressException | com.microsoft.bingads.V13.reporting | Diese Ausnahme wird ausgelöst, wenn versucht wurde, eine Berichtsergebnisdatei herunterzuladen, die noch nicht verfügbar ist. |
Fehlerbehebung für Java SDK
Sofern kein bekanntes Dienstproblem vorliegt, liegt der Fehler bei einem Aufruf in der Regel daran, dass die SOAP-Elemente ungültig oder nicht in der richtigen Reihenfolge sind oder Sie die falschen Anmeldeinformationen angegeben haben. Um dies in jedem Fall zu überprüfen, sollten Sie den Anforderungs-SOAP-Umschlag erfassen. Sie können sich an den Support wenden oder Ihre Aufzeichnung mit dem entsprechenden SOAP-Beispiel vergleichen, das für jeden Dienstvorgang dokumentiert ist.
Informationen zum Aktivieren der programmgesteuerten Protokollierung von Anforderungs- und Antwortnachrichten finden Sie unter Protokollieren von Dienstaufrufen.
Fiddler-Optionen
Mit diesen Schritten können Sie die SOAP-Umschläge aus einer Java-Anwendung mit einem Drittanbietertool wie Fiddler erfassen.
Exportieren Sie nach der Installation von Fiddler das Fiddler-Zertifikat aus dem Stammzertifikatspeicher. Klicken Sie auf "Extras>","Fiddler-Optionen". Wählen Sie die Registerkarte HTTPS aus, und aktivieren Sie das Kontrollkästchen "HTTPS-Datenverkehr entschlüsseln ". Klicken Sie auf OK, und befolgen Sie dann die Anweisungen, um das Fiddler-Zertifikat zu exportieren.
Verwenden Sie den folgenden Befehl, um das Zertifikat in den von Java verwendeten cacert-Speicher zu importieren, z. B. aus PowerShell als Administrator.
PS C:\Program Files\Java\jre1.8.0_201\bin> .\keytool.exe -importcert -v -alias "Fiddler cert" -trustcacerts -keystore "C:\Program Files\Java\jre1.8.0_201\lib\security\cacerts" -storepass changeit -file <PathToFiddlerRootGoesHere>\FiddlerRoot.cerFügen Sie Ihrer Java-Anwendung die folgenden Zeilen hinzu.
System.setProperty("https.proxyHost", "127.0.0.1"); System.setProperty("https.proxyPort", "8888");
PHP-Ausnahmen
Wenn Sie das Bing Ads PHP SDK verwenden, sollte Ihre Anwendung darauf vorbereitet sein, die im Folgenden beschriebenen Bing Ads API-Service-Level-Ausnahmen und Bing Ads PHP SDK-Ausnahmen zu behandeln.
Informationen zur Fehlerbehebung bei PHP-Anwendungen finden Sie unter PHP SDK-Problembehandlung.
Fehlerbehebung beim PHP SDK
Sofern kein bekanntes Dienstproblem vorliegt, liegt der Fehler bei einem Aufruf in der Regel daran, dass die SOAP-Elemente ungültig oder nicht in der richtigen Reihenfolge sind oder Sie die falschen Anmeldeinformationen angegeben haben. Um beide Fälle zu überprüfen, sollten Sie den SOAP-Umschlag der Anforderung erfassen. Sie können sich an den Support wenden oder Ihre Aufzeichnung mit dem entsprechenden SOAP-Beispiel vergleichen, das für jeden Dienstvorgang dokumentiert ist.
SOAP drucken
In PHP können Sie die folgenden Methoden verwenden, um die SOAP-Umschläge zu drucken. Jedes der PHP-Codebeispiele enthält diese Anweisungen, um die Fehler in der Konsole auszugeben.
print $proxy->GetService()->__getLastRequest()."\n";
print $proxy->GetService()->__getLastResponse()."\n";
PHP SDK-Ausnahmen
Die Bing Ads PHP SDK-Ausnahmen abstrahieren einige der Ausnahmen vom Servicelevel. Um die meisten Ausnahmen zu umgehen, können Sie es erneut versuchen. Sie können sich auch an den Support wenden, wenn das Problem nach mehreren Wiederholungsversuchen weiterhin besteht.
Sie sollten auch die OAuthTokenRequestException behandeln, die ausgelöst wird, wenn ein Fehler vom Autorisierungsserver des Microsoft-Kontos zurückgegeben wurde. Um diese Ausnahme zu beheben, können Sie zunächst die Stapelüberwachung überprüfen, um die Fehlerdetails anzuzeigen, falls Sie Maßnahmen ergreifen können, um das Problem zu beheben. Sie könnten beispielsweise eine ungültige Client-ID angegeben haben.
Python-Ausnahmen
Wenn Sie das Bing Ads Python SDK verwenden, sollte Ihre Anwendung darauf vorbereitet sein, die im Folgenden beschriebenen Bing Ads API-Service-Level-Ausnahmen und Bing Ads Python SDK-Ausnahmen zu behandeln.
Informationen zur Problembehandlung bei Python-Anwendungen finden Sie unter Python SDK-Problembehandlung.
Python SDK-Ausnahmen
Die Ausnahmen des Bing Ads Python SDK abstrahieren einige der Ausnahmen vom Servicelevel. Um die meisten Ausnahmen zu umgehen, können Sie es erneut versuchen. Sie können sich auch an den Support wenden, wenn das Problem nach mehreren Wiederholungsversuchen weiterhin besteht.
| Ausnahme | Namespaces | Beschreibung |
|---|---|---|
| BulkException | BingAds.V13.Bulk | Diese Ausnahme wird ausgelöst, wenn versucht wurde, eine abgeschlossene Massenergebnisdatei abzurufen, und der Massendienst einen fehlgeschlagenen Status zurückgibt. |
| BulkDownloadException | BingAds.V13.Bulk | Diese Ausnahme wird ausgelöst, wenn beim Herunterladen einer Massendatei eine Zeitüberschreitung auftritt. |
| BulkUploadException | BingAds.V13.Bulk | Diese Ausnahme wird ausgelöst, wenn beim Herunterladen einer Ergebnisdatei für den Massenupload eine Zeitüberschreitung auftritt. |
| EntityReadException | BingAds.V13.Bulk | Diese Ausnahme wird ausgelöst, wenn versucht wird, Entitäten aus einer Massendatei mithilfe von BulkFileReader zu lesen. Um diese Ausnahme zu beheben, können Sie zunächst die Stapelüberwachung überprüfen, um die Fehlerdetails anzuzeigen, falls Sie Maßnahmen ergreifen können, um das Problem zu beheben. So kann beispielsweise die Massendatei, aus der Sie lesen möchten, einen ungültigen Wert in einem der Felder enthalten. |
| EntityWriteException | BingAds.V13.Bulk | Diese Ausnahme wird ausgelöst, wenn versucht wird, Entitäten mithilfe von BulkFileWriter in eine Massendatei zu schreiben. Um diese Ausnahme zu beheben, können Sie zunächst die Stapelüberwachung überprüfen, um die Fehlerdetails anzuzeigen, falls Sie Maßnahmen ergreifen können, um das Problem zu beheben. Möglicherweise haben Sie einen ungültigen Wert für eine der Uploadentitäten angegeben. |
| FileDownloadException | BingAds | Diese Ausnahme wird ausgelöst, wenn beim Herunterladen einer Ergebnisdatei für den Massenupload eine Zeitüberschreitung auftritt. |
| FileUploadException | BingAds | Diese Ausnahme wird ausgelöst, wenn beim Hochladen einer Massendatei eine Zeitüberschreitung auftritt. |
| OAuthTokenRequestException | BingAds | Diese Ausnahme wird ausgelöst, wenn ein Fehler vom Autorisierungsserver des Microsoft-Kontos zurückgegeben wurde. Um diese Ausnahme zu beheben, können Sie zunächst die Stapelüberwachung überprüfen, um die Fehlerdetails anzuzeigen, falls Sie Maßnahmen ergreifen können, um das Problem zu beheben. Sie könnten beispielsweise eine ungültige Client-ID angegeben haben. |
| ReportingException | BingAds.V13.Reporting | Diese Ausnahme wird ausgelöst, wenn versucht wurde, eine abgeschlossene Berichtsergebnisdatei abzufragen, und der Berichtsdienst einen fehlgeschlagenen Status zurückgibt. |
| ReportingDownloadException | BingAds.V13.Reporting | Diese Ausnahme wird ausgelöst, wenn beim Herunterladen einer Berichtsergebnisdatei eine Zeitüberschreitung auftritt. |
| SdkException | BingAds | Die Basisausnahmeklasse für das Bing Ads Python SDK. Diese Ausnahme wird nie erhöht. |
| TimeoutException | BingAds | Diese Ausnahme wird ausgelöst, wenn ein Timeout auftritt. |
Fehlerbehebung beim Python SDK
Sofern kein bekanntes Dienstproblem vorliegt, liegt der Fehler bei einem Aufruf in der Regel daran, dass die SOAP-Elemente ungültig oder nicht in der richtigen Reihenfolge sind oder Sie die falschen Anmeldeinformationen angegeben haben. Um beide Fälle zu überprüfen, sollten Sie den SOAP-Umschlag der Anforderung erfassen. Sie können sich an den Support wenden oder Ihre Aufzeichnung mit dem entsprechenden SOAP-Beispiel vergleichen, das für jeden Dienstvorgang dokumentiert ist.
Protokollierung
Wenn Sie das Bing Ads Python SDK verwenden, können Sie die Protokollierung in den Ausgabedatenverkehr einschließen, z. B. die SOAP-Anforderung und -Antwort. Jedes der Python-Codebeispiele enthält diese Anweisungen, um die Ausgabe des gesamten SOAP-Datenverkehrs an die Konsole zu drucken. Achten Sie darauf, die Auskommentierung aufzuheben, wenn Sie den Datenverkehr anzeigen möchten.
import logging
logging.basicConfig(level=logging.INFO)
logging.getLogger('suds.client').setLevel(logging.DEBUG)
logging.getLogger('suds.transport.http').setLevel(logging.DEBUG)
Siehe auch
Fehlercodes bei Bing Ads-API-Vorgang
Bing Ads API-Webdienstadressen