use custom endpoint for lbry.tv embeds

This commit is contained in:
Sean Yesmunt 2019-12-16 12:44:31 -05:00
parent 30c9a3bc1c
commit 50bea913ec
3 changed files with 14 additions and 8 deletions

View file

@ -6,10 +6,11 @@ const send = require('koa-send');
const router = new Router();
// TODO
// router.get(`/embed/:claimName/:claimId`, async ctx => {
// Proxy request through lbrytv
// });
router.get(`/embed/:claimName/:claimId`, async ctx => {
const { claimName, claimId } = ctx.params;
const streamUrl = generateStreamUrl(claimName, claimId, LBRY_TV_API);
ctx.redirect(streamUrl);
});
router.get('*', async ctx => {
const html = await getHtml(ctx);

View file

@ -3,8 +3,7 @@ import * as ICONS from 'constants/icons';
import { FormField } from 'component/common/form';
import Button from 'component/button';
import React, { useRef } from 'react';
import { generateStreamUrl } from 'util/lbrytv';
import { LBRY_TV_API } from 'config';
import { generateEmbedUrl } from 'util/lbrytv';
type Props = {
copyable: string,
@ -19,7 +18,7 @@ export default function EmbedArea(props: Props) {
const { claim_id: claimId, name } = claim;
const input = useRef();
const streamUrl = generateStreamUrl(name, claimId, LBRY_TV_API);
const streamUrl = generateEmbedUrl(name, claimId);
let embedText = `<iframe width="560" height="315" src="${streamUrl}" allowfullscreen></iframe>`;
function copyToClipboard() {

View file

@ -1,7 +1,13 @@
const { URL } = require('../../config');
function generateStreamUrl(claimName, claimId, apiUrl) {
const prefix = process.env.SDK_API_URL || apiUrl;
return `${prefix}/content/claims/${claimName}/${claimId}/stream`;
}
function generateEmbedUrl(claimName, claimId) {
return `${URL}/embed/${claimName}/${claimId}`;
}
// module.exports needed since the web server imports this function
module.exports = { generateStreamUrl };
module.exports = { generateStreamUrl, generateEmbedUrl };