码迷,mamicode.com
首页 > 编程语言 > 详细

.net 调用java rest ful api 实例

时间:2016-06-26 06:56:10      阅读:198      评论:0      收藏:0      [点我收藏+]

标签:

注意post的参数组合

HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
request.Method = "POST";
request.KeepAlive = true;
request.AllowAutoRedirect = false;
request.ContentType = "application/x-www-form-urlencoded";
byte[] postdatabtyes = Encoding.UTF8.GetBytes("param={"imsi":"460023887603775","session":"hwJPCFmgNRtyOED91iTwpteCY"}");
request.ContentLength = postdatabtyes.Length;
Stream requeststream = request.GetRequestStream();
requeststream.Write(postdatabtyes, 0, postdatabtyes.Length);
requeststream.Close();
string resp;
try{
   using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
   {
      StreamReader sr = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
      resp = sr.ReadToEnd();
    }
   }

另外一种:

2、以Post方式获取

  using System.Web;

  Uri address = new Uri("http://api.search.yahoo.com/ContentAnalysisService/V1/termExtraction");

  // Create the web request
  HttpWebRequest request = WebRequest.Create(address) as HttpWebRequest;

  // Set type to POST
  request.Method = "POST";
  request.ContentType = "application/x-www-form-urlencoded";

  // Create the data we want to send
  string appId = "YahooDemo";
  string context = "Italian sculptors and painters of the renaissance"
  + "favored the Virgin Mary for inspiration";
  string query = "madonna";

  StringBuilder data = new StringBuilder();
  data.Append("appid=" + HttpUtility.UrlEncode(appId));
  data.Append("&context=" + HttpUtility.UrlEncode(context));
  data.Append("&query=" + HttpUtility.UrlEncode(query));

  // Create a byte array of the data we want to send
  byte[] byteData = UTF8Encoding.UTF8.GetBytes(data.ToString());

  // Set the content length in the request headers
  request.ContentLength = byteData.Length;

  // Write data
  using (Stream postStream = request.GetRequestStream())
  {
  postStream.Write(byteData, 0, byteData.Length);
  }

  // Get response
  using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
  {
  // Get the response stream
  StreamReader reader = new StreamReader(response.GetResponseStream());

  // Console application output
  Console.WriteLine(reader.ReadToEnd());
  }
  三、HTTP 验证请求

  有些朋友在调用Restful Api时,可能要提供用户名和密码进行Http身份验证,这里我们可以通过为请求增加一个 NetworkCredentials 实例来完成.

  // Create the web request
  HttpWebRequest request
  = WebRequest.Create("https://api.del.icio.us/v1/posts/recent") as HttpWebRequest;

  // Add authentication to request
  request.Credentials = new NetworkCredential("username", "password");

  // Get response
  using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
  {
  // Get the response stream
  StreamReader reader = new StreamReader(response.GetResponseStream());

  // Console application output
  Console.WriteLine(reader.ReadToEnd());
  }

 

.net 调用java rest ful api 实例

标签:

原文地址:http://www.cnblogs.com/lijianhua/p/5617250.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!