Analysieren Sie den Server-REST-API-Fehler

542

Ich verwende Google Cloud & Database auf mLab für die Bereitstellung des Analyseservers. Ich habe eine Compute Engine-Instanz und einen Bitnami-Parser-Stack darüber genommen. Ich habe alle Variablen in der Datei server.js entsprechend dem Beispiel konfiguriert, das von Pars in Github bereitgestellt wird. Jede API funktioniert gut wie JAVASCRIPT. Ich kann Anrufe aus Javascript-Dateien machen und Daten aus der Datenbank abrufen. Das Problem liegt jedoch bei RESTAPI. Mein Analyse-Server kann den Rest-API-Schlüssel nicht erkennen.

Dies ist die CURL aus meiner API CONSOLE aus dem Dashboard

 curl -X POST \ -H "X-Parse-Application-Id: " \ -H "X-Parse-REST-API-Key: undefined" \ http://serverURL/parse/functions/Show 

Diese meine server.js-Datei während der Initialisierungsanalyse

const parseServer = neuer ParseServer (

Wie Sie sehen konnten, ist der RESTAPI-Schlüssel in der Curl nicht definiert. Ich konnte nicht verstehen, wo ich einen Fehler machte. Bitte geben Sie mir einen Rat. Vielen Dank im Voraus.

0

1 Antwort auf die Frage

2

Bitnami-Entwickler hier.

Ich habe Ihre Anweisungen befolgt und kann Ihr Problem nicht reproduzieren.

Ich habe eine Maschine in Google Cloud erstellt, auf der sich die Bitnami-Analyse befindet. Dann ging ich zur URL der Anwendung und erstellte eine Klasse namens GameScore. Siehe diesen Screenshot.

Dann folgte ich dem Beispiel für die github-Analyse, um die Daten in die Datenbank einzufügen. Dies ist die Locke, die ich gemacht habe, was für mich funktioniert hat.

curl -X POST \ -H "X-Parse-Application-Id: APPID_FORM_SERVER.JS" \ -H "Content-Type: application/json" \ -d '{"score":1337,"playerName":"Sean Plott","cheatMode":false}' \ http://localhost:1337/parse/classes/GameScore 

Das APPID_FROM_SERVER.JSist das, was ich aus der server.jsDatei bekomme . Im Dashboard kann ich dann sehen, was ich an den Server gesendet habe.

Meine server.jsDatei ist die Standarddatei, die sich in befindet /opt/bitnami/apps/parse/htdocs/server.js

Es scheint, dass Ihre Konfiguration server.jsfalsch ist. So sieht eine Standarddatei server.jsaus:

var express = require('express'); var ParseServer = require('parse-server').ParseServer; var app = express(); // Specify the connection string for your mongodb database // and the location to your Parse cloud code var api = new ParseServer({ databaseURI: "mongodb://root:yCKeC13S@127.0.0.1:27017/bitnami_parse", cloud: "./node_modules/parse-server/lib/cloud-code/Parse.Cloud.js", appId: "d774b123a533e0ba2169b4926ed99de5676d59ef", masterKey: "5cdbe7c6fdb090c97cbf794a701dd697a70716ab", fileKey: "80e8cf19d1467992c6559a5826fef0278d489f9a", serverURL: 'http://35.187.2.104:80/parse' }); // Serve the Parse API on the /parse URL prefix app.use('/parse', api);  var port = 1337; app.listen(port, function() { console.log('parse-server running on port ' + port); });  //Parse Dashboard var ParseDashboard = require('parse-dashboard'); var dashboard = new ParseDashboard({ apps: [ { appName: "My Bitnami Parse API", appId: "d774b123a533e0ba2169b4926ed99de5676d59ef", masterKey: "5cdbe7c6fdb090c97cbf794a701dd697a70716ab", fileKey: "80e8cf19d1467992c6559a5826fef0278d489f9a", production: true, serverURL: 'http://35.187.2.104:80/parse' } ] });  var allowInsecureHTTP = true;  // Serve the Parse Dashboard on the /parsedashboard URL prefix app.use('/', dashboard);  var portdash = 4040; app.listen(portdash, function() { console.log('parse-dashboard running on port ' + portdash); });