diff --git a/package.json b/package.json index cebb8ba..b224f48 100644 --- a/package.json +++ b/package.json @@ -9,6 +9,7 @@ "export": "next export" }, "dependencies": { + "isomorphic-unfetch": "^3.0.0", "mysql2": "^2.1.0", "next": "^9.3.0", "react": "^16.13.0", diff --git a/pages/flux.jsx b/pages/flux.jsx index 9ea4038..22d8d15 100644 --- a/pages/flux.jsx +++ b/pages/flux.jsx @@ -1,232 +1,17 @@ import React from 'react' import FluxItem from '../components/FluxItem' - -const fakeData = [{ - pseudo: 'Avior', - path: '/baniere@2x.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/photo-filtre.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/Rectangle 6.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},{ - pseudo: 'Avior', - path: '/phone.png', - location: 'Chateau de la madame' -},] +import fetch from 'isomorphic-unfetch' export default class Flux extends React.Component { - static getInitialProps(ctx) { - return {data: fakeData} + static async getInitialProps(ctx) { + let hostname = '' + if (ctx.req) { + hostname = `http://${ctx.req.headers.host}` + + } + const data = await (await fetch(`${hostname}/api/photos`)).json() + return {data} } render() { diff --git a/yarn.lock b/yarn.lock index 9164352..de0cfbe 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3036,6 +3036,14 @@ isobject@^3.0.0, isobject@^3.0.1: resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= +isomorphic-unfetch@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/isomorphic-unfetch/-/isomorphic-unfetch-3.0.0.tgz#de6d80abde487b17de2c400a7ef9e5ecc2efb362" + integrity sha512-V0tmJSYfkKokZ5mgl0cmfQMTb7MLHsBMngTkbLY0eXvKqiVRRoZP04Ly+KhKrJfKtzC9E6Pp15Jo+bwh7Vi2XQ== + dependencies: + node-fetch "^2.2.0" + unfetch "^4.0.0" + jest-worker@24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.9.0.tgz#5dbfdb5b2d322e98567898238a9697bcce67b3e5" @@ -3535,7 +3543,7 @@ next@^9.3.0: webpack "4.43.0" webpack-sources "1.4.3" -node-fetch@2.6.0: +node-fetch@2.6.0, node-fetch@^2.2.0: version "2.6.0" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.0.tgz#e633456386d4aa55863f676a7ab0daa8fdecb0fd" integrity sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA== @@ -5172,6 +5180,11 @@ typedarray@^0.0.6: resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= +unfetch@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/unfetch/-/unfetch-4.1.0.tgz#6ec2dd0de887e58a4dee83a050ded80ffc4137db" + integrity sha512-crP/n3eAPUJxZXM9T80/yv0YhkTEx2K1D3h7D1AJM6fzsWZrxdyRuLN0JH/dkZh1LNH8LxCnBzoPFCPbb2iGpg== + unicode-canonical-property-names-ecmascript@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818"