From e46c8d18e5da4caf34246d2b5e52d28d3801e6ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=A4fer?= Date: Mon, 21 Jan 2019 21:32:53 +0100 Subject: [PATCH] Implement public folder --- src/middleware/fixImageUrlsMiddleware.js | 2 +- src/middleware/fixImageUrlsMiddleware.spec.js | 4 ++-- src/server.js | 2 ++ 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/middleware/fixImageUrlsMiddleware.js b/src/middleware/fixImageUrlsMiddleware.js index c3b828dae..e5dc47a6d 100644 --- a/src/middleware/fixImageUrlsMiddleware.js +++ b/src/middleware/fixImageUrlsMiddleware.js @@ -7,7 +7,7 @@ const legacyUrls = [ export const fixUrl = (url) => { legacyUrls.forEach((legacyUrl) => { - url = url.replace(legacyUrl, '') + url = url.replace(legacyUrl, '/api') }) return url } diff --git a/src/middleware/fixImageUrlsMiddleware.spec.js b/src/middleware/fixImageUrlsMiddleware.spec.js index 081154c5c..89d2a520d 100644 --- a/src/middleware/fixImageUrlsMiddleware.spec.js +++ b/src/middleware/fixImageUrlsMiddleware.spec.js @@ -4,14 +4,14 @@ describe('fixImageURLs', () => { describe('image url of legacy alpha', () => { it('removes domain', () => { const url = 'https://api-alpha.human-connection.org/uploads/4bfaf9172c4ba03d7645108bbbd16f0a696a37d01eacd025fb131e5da61b15d9.png' - expect(fixImageURLs(url)).toEqual('/uploads/4bfaf9172c4ba03d7645108bbbd16f0a696a37d01eacd025fb131e5da61b15d9.png') + expect(fixImageURLs(url)).toEqual('/api/uploads/4bfaf9172c4ba03d7645108bbbd16f0a696a37d01eacd025fb131e5da61b15d9.png') }) }) describe('image url of legacy staging', () => { it('removes domain', () => { const url = 'https://staging-api.human-connection.org/uploads/1b3c39a24f27e2fb62b69074b2f71363b63b263f0c4574047d279967124c026e.jpeg' - expect(fixImageURLs(url)).toEqual('/uploads/1b3c39a24f27e2fb62b69074b2f71363b63b263f0c4574047d279967124c026e.jpeg') + expect(fixImageURLs(url)).toEqual('/api/uploads/1b3c39a24f27e2fb62b69074b2f71363b63b263f0c4574047d279967124c026e.jpeg') }) }) diff --git a/src/server.js b/src/server.js index 76e8419b7..728237562 100644 --- a/src/server.js +++ b/src/server.js @@ -2,6 +2,7 @@ import { GraphQLServer } from 'graphql-yoga' import { makeExecutableSchema } from 'apollo-server' import { augmentSchema } from 'neo4j-graphql-js' import { typeDefs, resolvers } from './graphql-schema' +import express from 'express' import dotenv from 'dotenv' import mocks from './mocks' import middleware from './middleware' @@ -68,6 +69,7 @@ const createServer = (options) => { passport.use('jwt', jwtStrategy(driver)) server.express.use(passport.initialize()) + server.express.use(express.static('public')) server.express.post('/graphql', passport.authenticate(['jwt'], { session: false })) return server