c# 调用接口返回json
需要命名空间
using System.Net;
using System.Net.Security
using System.Security.Cryptography.X509Certificates;
using System.Web.Script.Serialization;
using Newtonsoft.Json;
//来对远程X.509证书的验证进行处理防止出现未能为SSL/TLS 安全通道建立信任关系错误
public static class Util
{
public static void SetCertificatePolicy()
{
ServicePointManager.ServerCertificateValidationCallback
+= RemoteCertificateValidate;
}
private static bool RemoteCertificateValidate(
object sender, X509Certificate cert,
X509Chain chain, SslPolicyErrors error)
{
System.Console.WriteLine("Warning, trust any certificate");
return true;
}
}
public string Token()
{
string parameters = "acount=123&&pwd=456";//接口账号密码
string url = String.Concat("https://api.ceshi/login.json?", parameters);//获取Token的API地址
Util.SetCertificatePolicy();//来对远程X.509证书的验证进行处理防止出现未能为SSL/TLS 安全通道建立信任关系
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);//创建request
request.Method = "GET";//提交数据方式
HttpWebResponse response = (HttpWebResponse)request.GetResponse();//发送目标请求
string jsonString;//json字符串
string token;//token
using (Stream stream = response.GetResponseStream())
{
StreamReader reader = new StreamReader(stream, System.Text.Encoding.UTF8);
jsonString = reader.ReadToEnd();//得到json字符串
JavaScriptSerializer js = new JavaScriptSerializer();
Test.info info = js.Deserialize<Test.info>(jsonString);// json格式实体 Deserialize<T>(String):将JSON字符串转化为类型T。 将json字符串进行序列化为Test.info
token = info.data.community_token;//得到token
}
return token;
}