Created share token hook.

This commit is contained in:
Mike Cao 2020-10-11 02:29:55 -07:00
parent 4119e80a9a
commit 5a73c224b7
22 changed files with 90 additions and 49 deletions

View file

@ -2,6 +2,7 @@ import { useAuth } from 'lib/middleware';
import { ok, methodNotAllowed, badRequest } from 'lib/response';
import { getRealtimeData } from 'lib/queries';
import { parseToken } from 'lib/crypto';
import { TOKEN_HEADER } from 'lib/constants';
export default async (req, res) => {
await useAuth(req, res);
@ -9,7 +10,7 @@ export default async (req, res) => {
if (req.method === 'GET') {
const { start_at } = req.query;
const token = req.headers['x-umami-token'];
const token = req.headers[TOKEN_HEADER];
if (!token) {
return badRequest(res);

View file

@ -2,23 +2,23 @@ import React from 'react';
import { useRouter } from 'next/router';
import Layout from 'components/layout/Layout';
import WebsiteDetails from 'components/pages/WebsiteDetails';
import useFetch from 'hooks/useFetch';
import useShareToken from 'hooks/useShareToken';
export default function SharePage() {
const router = useRouter();
const { id } = router.query;
const shareId = id?.[0];
const { data } = useFetch(`/api/share/${shareId}`, { disabled: !shareId });
const shareToken = useShareToken(shareId);
if (!data) {
if (!shareToken) {
return null;
}
const { websiteId, token } = data;
const { websiteId } = shareToken;
return (
<Layout>
<WebsiteDetails websiteId={websiteId} token={token} />
<WebsiteDetails websiteId={websiteId} />
</Layout>
);
}