.net 调用java rest ful api 实例

注意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());
  }
时间: 2024-07-29 07:51:24

.net 调用java rest ful api 实例的相关文章

调用java rest ful 接口实例

HttpWebRequest request = WebRequest.Create("http://192.168.0.99:8080/wzh-webservice/rest/login?username=shuenjia&password=123456") as HttpWebRequest;//rest/login request.Method = "post"; request.KeepAlive = true; request.Method = &

C#调用Java方法(详细实例)

C#调用c++ C#调用C++的例子网上很多,以一个C++的具体方法为例. C++代码 // 获取一帧图像数据MVSMARTCAMCTRL_API int __stdcall MV_SC_GetOneFrame(IN void* handle,                                                    IN OUT unsigned char *pData ,                                               

PHP调用JAVA的WebService简单实例

使用PHP调用JAVA语言开发的WebService.客户端提交两个String类型的参数,服务端返回一个对象类型.服务端使用AXIS-1.4作为SOAP引擎.客户端为PHP5.2.9,使用NuSOAP作为SOAP引擎. 服务端: 对象类 import java.io.Serializable; public class Person implements Serializable { /** * */ private static final long serialVersionUID = -

C#调用Java方法

C#调用Java方法(详细实例) 阅读目录 C#调用c++ C#调用JAVA方法 C#可以直接引用C++的DLL和转换JAVA写好的程序.最近由于工作原因接触这方面比较多,根据实际需求,我们通过一个具体例子把一个JAVA方法转换成可以由C#直接调用的DLL 回到目录 C#调用c++ C#调用C++的例子网上很多,以一个C++的具体方法为例. C++代码 // 获取一帧图像数据 MVSMARTCAMCTRL_API int __stdcall MV_SC_GetOneFrame(IN void*

NET调用Java之100-Continue的坑

场景:这段时间开发的时候遇到了需要NET调用java的restful api的情况,java端用的服务器是tomcat,框架是spring boot,net调用java端的接口之后只要java端的接口能返回正常的数据,net这边就果断超时了 这是java端返回的正常数据: 然后net的就死在这儿了, 好了,报错了: OK,我首先怀疑是Java的restful接口有问题,然后我就去用fiddler模拟请求一下: 好的,fiddler能够正常返回数据,那就坑爹不是java的问题了,现在我们来比较一下

HDFS API的java代码分析与实例

HDFS API的java代码分析与实例 1.HDFS常用的方法,我已经写好,我们看一下 // Create()方法,直接在HDFS中写入一个新的文件,path为写入路径,text为写入的文本内容 public static void  Create(String path,String text) throws IOException {             Configuration conf=new Configuration();                  conf.set(

外贸开发,用java调用速卖通api第一步,token的获取。

第一步 定义速卖通api的常量 public String client_id; public String client_key; public String site; 第二步 获取登陆的uRL /** * getloginurl * @param redirect_uri * @return */ public String GetLoginUrl(String redirect_uri) { String param = (new StringBuilder("client_id=&qu

Linux(centos 6.5) 调用java脚本以及定时运行的脚本实例及配置文件具体解释

Linux(centos 6.5) 调用java脚本以及定时运行的脚本实例 一.调用java程序脚本(默认已经搭建好了Java环境) 1.jdk 安装路径 /usr/jdk/jdk1.7/-- 2.java 程序路径 /usr/jdk 3.类名:Test.java(有主函数的类名) 4.调用java类的脚本,注意脚本的后缀是.sh 5.脚本内容: (1)#! /bin/bash // #! 特殊符号.说明这个脚本是由/bin 文件夹下的bash这个shell来解释并将解释后的内容给kernel来

关于c#调用java中间件api的几个问题

由于项目需要,做的c#客户端数据库连接串首先肯定不能写死的程序里(数据库很容易被攻击,我们的项目半年改了几次密码...) 放置在配置文件内,都可以看得到,最开始想法将配置文件加密,老师说加密过的文件还是不安全..... 最后的方法就是c#这边调用java的api返回连接串(它们那边做了不知道什么权限的)使用的HttpRequest,一下是postman里的结果(两个入参用于实现每次请求的校验) 在网上找了一段代码做个demo单个参数是成功执行... 下面是我的修改后代码 try { HttpWR