1

我正在尝试为 HipChat 创建通知,不幸的是他们的 HipChat-CS ( https://github.com/KyleGobel/Hipchat-CS ) nuget 包不起作用。因此,我想研究如何手动发送通知,但他们的示例是使用我不熟悉的 cURL。我想以他们的例子并将其变成我可以在我的 c# 应用程序中使用的东西。任何帮助将不胜感激!这是 cURL 示例:

curl -d '{"color":"green","message":"My first notification (yey)","notify":false,"message_format":"text"}' -H 'Content-Type: application/json' https://organization.hipchat.com/v2/room/2388080/notification?auth_token=authKeyHere

再次感谢你!

阿杰

4

2 回答 2

3

您可以使用 HttpWebRequest 建立连接并发送您的 json 有效负载。您需要添加System.Net到您的 using 指令中。

string jsonContent = "{\"color\":\"green\",\"message\":\"My first notification (yey)\",\"notify\":false,\"message_format\":\"text\"}";
byte[] jsonBytes = Encoding.ASCII.GetBytes(jsonContent);
var request = (HttpWebRequest) WebRequest.Create("https://organization.hipchat.com/v2/room/2388080/notification?auth_token=authKeyHere");
request.ContentType = "application/json";
request.Method = "POST";
request.ContentLength = jsonBytes.Length;

using (var reqStream = request.GetRequestStream())
{
    reqStream.Write(jsonBytes, 0, jsonBytes.Length);
    reqStream.Close();
}

 WebResponse response = request.GetResponse();
//access fields of response in order to get the response data you're looking for.
于 2016-07-27T16:37:12.497 回答
1

要使用 HipChat-CS,我必须手动卸载自动下载的依赖包ServiceStack,并手动安装特定版本的 ServiceStack,即 4.0.56。一旦我这样做了,一切都奏效了。

于 2016-09-02T16:05:39.857 回答