403 „rest_forbidden“-Fehler in der WordPress-REST-API (aber nur für Einstellungen)?

Lesezeit: 2 Minuten

Benutzeravatar von Shana Raj
Shana Raj

Ich habe alle API von WordPress außer Einstellungen (/wp/v2/settings). sein zurückkehrender rest_forbidden-Fehler

{
  "code": "rest_forbidden",
  "message": "Sorry, you are not allowed to do that.",
  "data": {
    "status": 403
  }
}

  • Ich erhalte ein ähnliches Ergebnis, ich kann dies mit der App-API mit einem Client-Secret erreichen, aber nicht, wenn ich WP-API Basic Auth verwende.

    – Kalksam

    9. September 2017 um 21:53 Uhr

  • @calcsam – Können Sie diese Frage detaillierter beantworten und Ihre Lösung für andere Benutzer (mich eingeschlossen) skizzieren? Vielen Dank.

    – Ian Holden

    7. Januar 2018 um 21:02 Uhr

  • WordPress Code Reference add_filter() param $priority description kann hilfreich sein.

    – Javeed Ishaq

    14. Februar 2018 um 12:09 Uhr

  • Bitte erklären Sie Ihren Code, was Sie versuchen zu tun. dann gebe ich dir die lösung bekannt.

    – Anand Choudhary

    4. Mai 2018 um 7:31 Uhr

  • 403 hat keinen Zugriff, vielleicht hat Ihr Benutzer nicht die richtige Berechtigung zum Aktualisieren der Einstellungen?

    – Jack Robson

    30. August 2018 um 18:44 Uhr

Ihr Benutzer hat nicht die richtigen Berechtigungen, um auf die Daten auf dieser Route zuzugreifen. Aus der Box /settings/ Strecke erfordert die manage_options Erlaubnis (siehe die get_item_permissions_check Methode).

// found in WP Core class-wp-rest-settings-controller.php
/**
 * Checks if a given request has access to read and manage settings.
 *
 * @since 4.7.0
 *
 * @param WP_REST_Request $request Full details about the request.
 * @return bool True if the request has read access for the item, otherwise false.
 */
public function get_item_permissions_check( $request ) {
  return current_user_can( 'manage_options' );
}

Benutzeravatar von sdminev
sdminev

Welcher Benutzer ist mit den API-Anmeldeinformationen verknüpft?

Der Einstellungsendpunkt muss der Benutzer haben manage_options Genehmigung; Wenn Sie eine benutzerdefinierte Rolle verwenden, können Sie sie mit hinzufügen
"manage_options" => true;

Andernfalls machen Sie einfach die Benutzerrolle Administrator.

Wenn jemand ein Problem hat, versuchen Sie, dieses Plugin zu installieren: https://wordpress.org/plugins/application-passwords/

Generieren Sie ein Anwendungspasswort aus Ihrem Profil und verwenden Sie dieses mit einfacher Authentifizierung, Ihr Benutzername ist derselbe wie der WordPress-Benutzername oder die E-Mail-Adresse und das Passwort ist ein neu generiertes Passwort.

Möglicherweise müssen Sie Ihrer .htaccess-Datei auch eine Regel zum Umschreiben des HTTP-Headers hinzufügen. Gehen Sie dazu folgendermaßen vor: https://github.com/WordPress/application-passwords/wiki/Basic-Authorization-Header—-Missing

1395610cookie-check403 „rest_forbidden“-Fehler in der WordPress-REST-API (aber nur für Einstellungen)?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy