diff --git a/spec/PublicAPI.spec.js b/spec/PublicAPI.spec.js index 07853157..20676811 100644 --- a/spec/PublicAPI.spec.js +++ b/spec/PublicAPI.spec.js @@ -41,7 +41,7 @@ describe("public API without publicServerURL", () => { beforeEach(done => { reconfigureServer({ appName: 'unused' }) .then(done, fail); - }) + }); it("should get 404 on verify_email", (done) => { request('http://localhost:8378/1/apps/test/verify_email', (err, httpResponse, body) => { expect(httpResponse.statusCode).toBe(404); diff --git a/spec/index.spec.js b/spec/index.spec.js index 7f30388f..40ec405e 100644 --- a/spec/index.spec.js +++ b/spec/index.spec.js @@ -164,6 +164,15 @@ describe('server', () => { }) }); + it('can respond 200 on path health', done => { + request.get({ + url: 'http://localhost:8378/1/health', + }, (error, response, body) => { + expect(response.statusCode).toBe(200); + done(); + }); + }); + it('can create a parse-server v1', done => { var parseServer = new ParseServer.default(Object.assign({}, defaultConfiguration, { diff --git a/src/ParseServer.js b/src/ParseServer.js index 3752d44c..8d442d16 100644 --- a/src/ParseServer.js +++ b/src/ParseServer.js @@ -154,7 +154,7 @@ class ParseServer { } if (!filesAdapter && !databaseURI) { - throw 'When using an explicit database adapter, you must also use and explicit filesAdapter.'; + throw 'When using an explicit database adapter, you must also use an explicit filesAdapter.'; } const loggerControllerAdapter = loadAdapter(loggerAdapter, WinstonLoggerAdapter, { jsonLogs, logsFolder, verbose, logLevel, silent }); @@ -288,6 +288,8 @@ class ParseServer { maxUploadSize: maxUploadSize })); + api.use('/health', (req, res) => res.sendStatus(200)); + api.use('/', bodyParser.urlencoded({extended: false}), new PublicAPIRouter().expressRouter()); api.use(bodyParser.json({ 'type': '*/*' , limit: maxUploadSize }));