c# - 使用传入 Webhook C# 将图像发布到 Slack

标签 c# json webhooks slack-api

我正在尝试将图像发布到 Slack 中,但遇到了一些麻烦。目前,我创建一个 httpWebRequest 将消息发布到 slack 中,并使用 JavaScriptSerializer 将消息序列化为 json 格式的字符串,如下所示:

    string json = new JavaScriptSerializer().Serialize(new
            {
                username = userName,
                image_url = imageUrl,
                text = message,
                icon_emoji = icon,
                channel = channelName
            });
            streamWriter.Write(json);

我现在正在尝试将图像添加到消息中,但到目前为止尚未成功。我尝试添加像 Slack 建议的附件,但我认为我的格式不正确。我已经尝试过

string json = new JavaScriptSerializer().Serialize(new
            {
                username = userName,
                image_url = imageUrl,
                text = message,
                icon_emoji = icon,
                channel = channelName,
                attachments = new {image_url = www.myurllink.com}
            });
            streamWriter.Write(json);

尽管字符串似乎设置正确,但它无法发布我的图像或我在 slack 附件中包含的任何其他信息。

最佳答案

所以我得到了答案,我需要创建一个新的数组对象,然后将该数组设置为等于 image_url 的新元素。

string json = new JavaScriptSerializer().Serialize(new
            {
                username = userName,
                text = message,
                icon_emoji = icon,
                channel = channelName,
                attachments = new []{ new {image_url = "www.imageurl.com", title = "image as of " + DateTime.Now}}
            });

我还添加了标题来展示如何添加多个元素。您不需要为要添加到附件的每个项目声明一个新元素。只需用逗号分隔即可。

关于c# - 使用传入 Webhook C# 将图像发布到 Slack,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31279560/

相关文章:

c# - 使用 BouncyCaSTLe 生成的证书验证为服务器时出现 "The credentials supplied to the package were not recognized"错误

javascript - 如何在 react-native 中操作单个对象 JSON 的获取响应

Azure DevOps 自定义服务 Hook

heroku - 为什么 Stripe 事件没有触发并且 webhook 没有接收到?

c# - .NET 中的 block 级与函数级范围界定是否对性能有影响

c# - "Delegate to an instance method cannot have null ' 这个' "转发事件时

javascript - 从 API 在 React 中显示 Json 对象

python - 如何使用 Python 向 Viber 机器人发送消息?

c# - 使用 TCPDF 在 ASP.NET MVC 中生成 PDF

json - 写入 JSON 日志文件的格式?