2020-07-17 10:03:38 +02:00
|
|
|
import { parseCollectRequest } from 'lib/utils';
|
2020-07-18 09:25:29 +02:00
|
|
|
import { savePageView } from 'lib/db';
|
2020-07-18 19:36:46 +02:00
|
|
|
import { allowPost } from 'lib/middleware';
|
2020-07-17 10:03:38 +02:00
|
|
|
|
|
|
|
export default async (req, res) => {
|
2020-07-18 19:36:46 +02:00
|
|
|
await allowPost(req, res);
|
|
|
|
|
2020-07-17 10:03:38 +02:00
|
|
|
const values = parseCollectRequest(req);
|
|
|
|
|
2020-07-18 19:36:46 +02:00
|
|
|
if (values.success) {
|
2020-07-17 10:03:38 +02:00
|
|
|
const { type, session_id, url, referrer } = values;
|
|
|
|
|
|
|
|
if (type === 'pageview') {
|
2020-07-18 19:36:46 +02:00
|
|
|
await savePageView(session_id, url, referrer).catch(() => {
|
|
|
|
values.success = 0;
|
|
|
|
});
|
2020-07-17 10:03:38 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2020-07-18 19:36:46 +02:00
|
|
|
res.status(200).json({ success: values.success });
|
2020-07-17 10:03:38 +02:00
|
|
|
};
|