2017-12-17 4 views
0

Ich versuche, meine Benutzer zu erhalten, die in Auth0 gespeichert sind. Also, ich habe versucht, diese Website Auth0 management API docs mit meinem API-Token und API-Domain. Das funktioniert gut!
Dann habe ich versucht, das gleiche in Knoten js zu tun, aber wenn ich das tue, gibt es einen Fehler zurück. Die Fehlermeldung lautet:
Nodejs Auth0 lesen Benutzer mit API nicht funktioniert (Fehler: 400, msg: Bad HTTP-Authentifizierung Header-Format)

"statusCode":400,"error":"Bad Request","message":"Bad HTTP authentication header format","errorCode":"Bearer"

Dies ist der Code, den ich in der Dokumentation fount

var request = require("request"); 

var options = { method: 'GET', 
    url: 'https://<api_url>/api/v2/users', 
    headers: { authorization: 'Bearer ACCESS_TOKEN' } 
}; 

request(options, function (error, response, body) { 
    if (error) throw new Error(error); 

    console.log(body); 
}); 


Das einzige, was geändert wird, ist, dass ich die Abfragezeichenfolge gelöscht und fügte meine api_url und das gleiche Access Token, das ich auf der Auth0 management API docs (die funktioniert). Fehle ich etwas?

Antwort

0

Der Code sieht einwandfrei aus. Ich bearbeitete es mit meinem Host-Name/Zugriffstoken wie folgt und es ergab Benutzer:

var request = require("request"); 

var token = 'eyJ0...' 

var options = { method: 'GET', 
    url: 'https://tenant_name.auth0.com/api/v2/users', 
    headers: { authorization: 'Bearer ' + token } 
}; 

request(options, function (error, response, body) { 
    if (error) throw new Error(error); 

    console.log(body); 
}); 

Die beiden Dinge, die in Ihrem Fall sind möglicherweise falsch gelaufen:

  1. Sie haben das nicht richtig ersetzen ACCESS_TOKEN im Code.
  2. Das Zugriffstoken verfügt nicht über die Berechtigung read:users. Sie können dies überprüfen, indem Sie das Token in jwt.io einfügen und die Nutzlast überprüfen.