接上篇”WCF实现REST服务“,服务端有了,咱们看看客户端怎么访问,因为JS跨域的限制,这里经过WebClient作在后台代理来访问,话很少说,直接上代码。 json
一、GET请求 c#
WebClient test = new WebClient(); Stream data = test.OpenRead("http://localhost:8000/api/test/111"); StreamReader reader = null; try { reader = new StreamReader(data, Encoding.UTF8); string responseJson = reader.ReadToEnd(); } finally { try { if (reader != null) { reader.Close(); } } catch { } }
二、POST/PUT/DELETE请求 api
//这里是传递给服务方法的参数,JSON格式,在WCF的接口特性中能够更改成XML格式~ StringBuilder json = new StringBuilder(); json.Append("{"); json.Append("\"loginName\":\"test\","); json.Append("\"password\":\"test\""); json.Append("}"); byte[] requestData = Encoding.GetEncoding("UTF-8").GetBytes(json.ToString()); WebClient test = new WebClient(); test.Headers.Add("Content-Type", "application/json"); test.Headers.Add("ContentLength", data.Length.ToString()); //例子里用的是POST方法,要使用PUT/DELETE方法只须要把POST改为PUT/DELETE就好了~ byte[] responseData = test.UploadData("http://localhost:8000/api/login/", "POST", data); string result = Encoding.GetEncoding("UTF-8").GetString(results);嗯~就这些~欢迎拍砖~可是~能不能别打脸。。。