C#端代碼:
String contents =“hello 這是C#傳來的數據”;//請求string uri = "http://192.168.1.149:8080/項目名/TestServlte";HttpWebRequest request = HttpWebRequest.Create(uri) as HttpWebRequest;request.Method = "post";//請求方法request.ProtocolVersion = new Version(1, 1);
string param = contents;Stream reqStream = request.GetRequestStream()reqStream.Write(param);reqStream.Close();
HttpWebResponse response = request.GetResponse() as HttpWebResponse;Stream stream = response.GetResponseStream()StreamReader reader = new StreamReader(stream);string responseString = reader.ReadToEnd();
reader.Close();
java端代碼:
/*** doPost(運用servlet連接elasticsearch')*/public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {//使用post方法request.setCharacterEncoding("UTF-8");//設置字符編碼response.setContentType("text/html;charset=utf-8");//獲取流的同時設置編碼格式爲utf-8(雖然上面已經設置了,但是這邊還是要再設一次) BufferedReader reader = new BufferedReader(new InputStreamReader(request.getInputStream(),"utf-8"));String lines = reader.readLine();//獲取C#端傳輸過來的數據爲 System.out.println("C#端傳輸過來的數據爲:"+lines);//lines = new String(lines.getBytes(), "utf-8");reader.close();//關閉連接 //直接轉換爲系統默認編碼下對應的字符,再輸出 PrintWriter out = response.getWriter();out.println("這是返回給C#端的信息:Hello C#!");out.flush();out.close(); ESTools.close();System.out.println("執行完畢");}
親自使用過了,可以成功!!!
若讀者有不成功的,文章下面留言,聯繫小編。
-
Console.WriteLine(responseString);