mirror of
https://github.com/DIYgod/RSSHub.git
synced 2025-12-09 06:30:40 +08:00
fix: check null base url
This commit is contained in:
@@ -39,7 +39,7 @@ module.exports = async (ctx, next) => {
|
|||||||
if (item.description) {
|
if (item.description) {
|
||||||
const $ = cheerio.load(item.description);
|
const $ = cheerio.load(item.description);
|
||||||
let baseUrl = item.link || ctx.state.data.link;
|
let baseUrl = item.link || ctx.state.data.link;
|
||||||
if (!baseUrl.match(/^https?:\/\//)) {
|
if (baseUrl && !baseUrl.match(/^https?:\/\//)) {
|
||||||
if (baseUrl.match(/^\/\//)) {
|
if (baseUrl.match(/^\/\//)) {
|
||||||
baseUrl = 'http:' + baseUrl;
|
baseUrl = 'http:' + baseUrl;
|
||||||
} else {
|
} else {
|
||||||
@@ -53,7 +53,7 @@ module.exports = async (ctx, next) => {
|
|||||||
const $ele = $(ele);
|
const $ele = $(ele);
|
||||||
|
|
||||||
// absolute link
|
// absolute link
|
||||||
if (ctx.state.data.link) {
|
if (baseUrl) {
|
||||||
$ele.attr('href', new URL($ele.attr('href'), baseUrl).href);
|
$ele.attr('href', new URL($ele.attr('href'), baseUrl).href);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -73,7 +73,7 @@ module.exports = async (ctx, next) => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// absolute link
|
// absolute link
|
||||||
if (ctx.state.data.link) {
|
if (baseUrl) {
|
||||||
$ele.attr('src', new URL($ele.attr('src'), baseUrl).href);
|
$ele.attr('src', new URL($ele.attr('src'), baseUrl).href);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user