(1) 访问Rest ful接口时 Token验证 返回数据格式封装
(一)访问时Token验证 返回数据格式封装
1.1访问Api接口 方法 实现
1.1.1 创建访问Restful Api帮助类
public static string MyGet = "GET"; public static string MyPost = "POST"; public static string MyPut = "PUT"; public static string MyDELETE = "DELETE"; /// <summary> /// 访问接口信息 /// </summary> /// <param name="JsonString">抛送的字符串</param> /// <param name="achieveUrl">访问的路径</param> /// <param name="PublishKey">密钥Token</param> /// <param name="Method">访问方法</param> /// <returns></returns> public static string SendService(string JsonString, string achieveUrl, string PublishKey, string Method) { //用于返回信息的记录 var responseValue = string.Empty; if (!string.IsNullOrEmpty(achieveUrl)) { //基于http协议的请求响应 HttpWebRequest request = WebRequest.Create(achieveUrl) as HttpWebRequest; //提交方法 request.Method = Method; //设置Http标头信息 request.UserAgent = ""; //设置请求超时时间 request.Timeout = 1000 * 60 * 30; //设置读取/写入超时时间 request.ReadWriteTimeout = 1000 * 60 * 30; //request.Headers.Add("", ""); request.Headers.Add("Token", PublishKey); request.ContentType = @"application/json"; //判断访问方法 if (Method != "GET" && Method != "PUT") { request.ContentLength = Encoding.UTF8.GetByteCount(JsonString); if (!string.IsNullOrEmpty(JsonString))//如果传送的数据不为空,并且方法是put { var encoding = new UTF8Encoding(); var bytes = Encoding.GetEncoding("UTF-8").GetBytes(JsonString);// request.ContentLength = bytes.Length; using (var writeStream = request.GetRequestStream()) { writeStream.Write(bytes, 0, bytes.Length); } } } //http请求的返回状态 using (var response = (HttpWebResponse)request.GetResponse()) { //获取来自 服务器或接口的响应信息 using (var responseStream = response.GetResponseStream()) { if (responseStream != null) { using (var reader = new StreamReader(responseStream)) { responseValue = reader.ReadToEnd(); } } } } } return responseValue; }