微信账号做的差不多了,总觉得少了点什么,于是兴起加入了小黄鸡,不仅好玩,还能给公共账号增加流量。
黄鸡的介绍:
其实是棒子做的一个聊天机器人,之前再人人微博上火了一把,是中国人对黄鸡和人人/新浪的api进行了整合。黄鸡是要收费的,但是有免费版本,只有七天试用期,每天100条的回复限制
接入过程:
首先进入小黄鸡的官网http://developer.simsimi.com/
点右上角的SignUp
这个页面大家要注意,下边的验证码可能需要F.Q才能看到
申请完之后,在登陆
登陆之后,是这样一个页面,当然之前我添加过一个应用,第一次进的时候是空的,需要新建一个
点View Details,获得黄鸡接口的key
有了Key,我们就可以调用黄鸡接口了,查看官方的开发文档
数据交互很简单:
先带着key,要发送的文字,语言发送给api接口
然后黄鸡服务器会返回一个Json数据。
request是状态,response是黄鸡回复的内容。
好吧开始写代码了:
我们先把黄鸡的接口地址定义成一个全局变量。
public static string yellowchicken = "http://sandbox.api.simsimi.com/request.p?你的key&lc=ch&ft=1.0&text=";
定义一个model,用来接收返回的Json
public class YellowChicken
{
public string response { get; set; }
public int id { get; set; }
public int result { get; set; }
public string msg { get; set; }
}
但是上边的数据并不都是我们想要的,我们只需要返回一个文字和状态就好了,于是新建一个模型
public class ChickenBack {
public string response { get; set; }
public int result { get; set; }
}
写一个httpget的方法,用来发送数据
public static string HttpGet(string url)
{
HttpWebRequest req = HttpWebRequest.Create(url) as HttpWebRequest;
if (req == null)
throw new ArgumentException();
req.Method = "GET";
HttpWebResponse res = (HttpWebResponse)req.GetResponse();
if (res.StatusCode != HttpStatusCode.OK)
throw new WebException("code" + res.StatusCode);
using (var stream = res.GetResponseStream())
using (var reader = new System.IO.StreamReader(stream, Encoding.UTF8))
{
var result = reader.ReadToEnd();
reader.Close();
stream.Close();
//res.Close();
return result;
}
}
新建一个DoChicken类
public class DoChicken
{
public ChickenBack sendchicken(string text)
{
//**是指封装上边get方法的类,Final是指封装yellowchicken(黄鸡api入口)的类
string chickenback= **.HttpGet(FinalStr.yellowchicken+text);
//先将接受的数据反序列化,再提出里边必要的信息赋值给chickenback。
string back = new JavaScriptSerializer().Deserialize<YellowChicken>(chickenback).response.ToString();
int result = new JavaScriptSerializer().Deserialize<YellowChicken>(chickenback).result;
return new ChickenBack { response = back, result = result };
}
}
好了,现在chicken对象已经存储了我们需要的信息,我们只需要发送给用户就好了
如何发送,请查看