尝试在 Discord 中使用变量作为超链接降价
Trying to use a variable as Hyperlink markdown in Discord
实际上我正在为 Discord 开发 Upload-Bot。我的问题是我想使用一个变量(包含 api 永久链接)作为超链接降价。
目前看起来是这样的:
但它应该看起来像这样:("Vale Guardian" 超链接 mardown 应该包含来自 "DpsReportVg" 变量的永久链接)
using (WebClient client2 = new WebClient())
{
DpsReport1 = client2.DownloadString("https://dps.report/getUploads?json=1&userToken=5656165565161312564651635");
}
var dataObject = JsonConvert.DeserializeObject<dynamic>(DpsReport1);
string DpsReportVg = dataObject.uploads[3].permalink.ToString();
var embed = new EmbedBuilder();
embed.WithTitle("DPS-Reports uploaded by ");
embed.WithDescription(Context.User.Username);
embed.WithColor(new Color(0, 255, 0));
embed.WithCurrentTimestamp();
embed.AddField("Spirit Vale", "[Vale Guardian](DpsReportVg)");
您需要使用EmbedBuilder.withUrl
方法:
查看官方文档以获取带有图像的完整示例:
https://discord4j.readthedocs.io/en/latest/Making-embedded-content-using-EmbedBuilder/
您几乎做到了,但是您忽略了一个小细节。
你有
embed.AddField("Spirit Vale", "[Vale Guardian](DpsReportVg)");
但你应该拥有的是
embed.AddField("Spirit Vale", $"[Vale Guardian]({DpsReportVg})");
说明:
您实际上并没有使用您的变量,您只是添加了一个恰好与您的变量名称匹配的字符串。
我对您的代码的编辑使用字符串插值将您的变量插入到您的字符串中,从而提供您存储在变量中的实际 link。
实际上我正在为 Discord 开发 Upload-Bot。我的问题是我想使用一个变量(包含 api 永久链接)作为超链接降价。
目前看起来是这样的:
但它应该看起来像这样:("Vale Guardian" 超链接 mardown 应该包含来自 "DpsReportVg" 变量的永久链接)
using (WebClient client2 = new WebClient())
{
DpsReport1 = client2.DownloadString("https://dps.report/getUploads?json=1&userToken=5656165565161312564651635");
}
var dataObject = JsonConvert.DeserializeObject<dynamic>(DpsReport1);
string DpsReportVg = dataObject.uploads[3].permalink.ToString();
var embed = new EmbedBuilder();
embed.WithTitle("DPS-Reports uploaded by ");
embed.WithDescription(Context.User.Username);
embed.WithColor(new Color(0, 255, 0));
embed.WithCurrentTimestamp();
embed.AddField("Spirit Vale", "[Vale Guardian](DpsReportVg)");
您需要使用EmbedBuilder.withUrl
方法:
查看官方文档以获取带有图像的完整示例:
https://discord4j.readthedocs.io/en/latest/Making-embedded-content-using-EmbedBuilder/
您几乎做到了,但是您忽略了一个小细节。
你有
embed.AddField("Spirit Vale", "[Vale Guardian](DpsReportVg)");
但你应该拥有的是
embed.AddField("Spirit Vale", $"[Vale Guardian]({DpsReportVg})");
说明:
您实际上并没有使用您的变量,您只是添加了一个恰好与您的变量名称匹配的字符串。
我对您的代码的编辑使用字符串插值将您的变量插入到您的字符串中,从而提供您存储在变量中的实际 link。