Add prefetchMaxSearchSize to override limit for link previews
YouTube puts the opengraph tags needed for the preview after ~300KB in the body instead of the beginning of the <head> tag. Instead of hardcoding the value, allow the server admin to set the policy as they prefer.
This commit is contained in:
parent
f99e4eef77
commit
7c17662fea
@ -150,6 +150,14 @@ module.exports = {
|
|||||||
// This value is set to `2048` kilobytes by default.
|
// This value is set to `2048` kilobytes by default.
|
||||||
prefetchMaxImageSize: 2048,
|
prefetchMaxImageSize: 2048,
|
||||||
|
|
||||||
|
// ### prefetchMaxSearchSize
|
||||||
|
//
|
||||||
|
// This value controls the maximum request size made to find the link preview
|
||||||
|
// Open Graph tags. For some sites like YouTube this can easily exceed 300 kilobytes.
|
||||||
|
//
|
||||||
|
// This value is set to 50 kilobytes by default.
|
||||||
|
prefetchMaxSearchSize: 50,
|
||||||
|
|
||||||
// ### `fileUpload`
|
// ### `fileUpload`
|
||||||
//
|
//
|
||||||
// Allow uploading files to the server hosting The Lounge.
|
// Allow uploading files to the server hosting The Lounge.
|
||||||
|
@ -407,9 +407,14 @@ function fetch(uri, headers) {
|
|||||||
// We don't need to download the file any further after we received content-type header
|
// We don't need to download the file any further after we received content-type header
|
||||||
gotStream.destroy();
|
gotStream.destroy();
|
||||||
} else {
|
} else {
|
||||||
// if not image, limit download to 50kb, since we need only meta tags
|
// if not image, limit download to the max search size, since we need only meta tags
|
||||||
// twitter.com sends opengraph meta tags within ~20kb of data for individual tweets
|
// twitter.com sends opengraph meta tags within ~20kb of data for individual tweets, the default is set to 50.
|
||||||
limit = 1024 * 50;
|
// for sites like Youtube the og tags are in the first 300K and hence this is configurable by the admin
|
||||||
|
limit =
|
||||||
|
"prefetchMaxSearchSize" in Helper.config
|
||||||
|
? Helper.config.prefetchMaxSearchSize * 1024
|
||||||
|
: // set to the previous size if config option is unset
|
||||||
|
50 * 1024;
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.on("error", (e) => reject(e))
|
.on("error", (e) => reject(e))
|
||||||
|
Loading…
Reference in New Issue
Block a user