【问题标题】:Can I store a redirected url into a variable with JavaScript?我可以使用 JavaScript 将重定向的 url 存储到变量中吗?
【发布时间】:2021-07-15 01:22:16
【问题描述】:

我正在开发一个 Discordbot,它获取频道中发布的音乐的链接并将它们存储在一个数组中。我正在使用它来创建所有提交曲目的队列。

大多数人链接 SoundCloud 或 YouTube 链接。到目前为止工作正常。 但有时人们会发布以https://soundcloud.app.goo.gl 开头的链接 重定向到实际的https://soundcloud.com/username/track

https://youtu.be 相同,重定向到https://youtube.com/etcetc

const client_2 = new Discord.Client();    
client_2.on('message', async (msg) => {
const linksubmit = "https://";
if (msg.content.startsWith(linksubmit)) {
let submit = msg.toString();
    }
}

这会将任何已发布的链接存储到变量 submit 中。但是有没有办法找到重定向 url,然后将其存储到变量中? (使用 JavaScript)

【问题讨论】:

  • 您可以检查标头中的位置标头,您必须先获取它,如果您可以获取标头,那么这将更轻量级。

标签: javascript discord


【解决方案1】:

我能想到的是使用replace() 方法在字符串中搜索指定值或正则表达式,并返回一个新字符串,其中指定值被替换[read more]。所以你可以编写脚本来重写你的链接,如果它改变以适应你的格式,就像这样:

var URLRewriter = function(a, b) {
    $('a[href*="' + a + '"]').each(function() {
        $(this).attr('href', $(this).attr('href').replace(a, b));
    });
};

URLRewriter('youtu.be', 'youtube.com');

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多