评论

收藏

[Java] java模拟ajax访问另一个项目的controller代码实例

编程语言 编程语言 发布于:2021-09-18 14:47 | 阅读数:408 | 评论:0

今天小编就为大家分享一篇关于java模拟ajax访问另一个项目的controller代码实例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
不同项目,如何java模拟ajax访问另一个项目的controller
直接上码
package com.ultrapower.zq.iscloud.web.boc.api.utils;
/**
 * create by liujie
 */
import java.io.bufferedreader;
import java.io.ioexception;
import java.io.inputstreamreader;
import java.io.printwriter;
import java.net.url;
import java.net.urlconnection;
import java.util.list;
import java.util.map;
import org.json.jsonobject;
import org.jsoup.jsoup;
import org.jsoup.nodes.document;
public class httputils {
  /**
   * 向指定url发送get方法的请求
   * @param url
   *    发送请求的url
   * @param param
   *    请求参数,请求参数应该是 name1=value1&name2=value2 的形式。
   * @return url 所代表远程资源的响应结果
   */
  public static string sendget(string url, string param) {
  string result = "";
  bufferedreader in = null;
  try {
    string urlnamestring = url + "?" + param;
    url realurl = new url(urlnamestring);
    // 打开和url之间的连接
    urlconnection connection = realurl.openconnection();
    // 设置通用的请求属性
    connection.setrequestproperty("accept", "*/*");
    connection.setrequestproperty("connection", "keep-alive");
    connection.setrequestproperty("user-agent",
      "mozilla/4.0 (compatible; msie 6.0; windows nt 5.1;sv1)");
    // 建立实际的连接
    connection.connect();
    // 获取所有响应头字段
    map<string, list<string>> map = connection.getheaderfields();
    // 遍历所有的响应头字段
    for (string key : map.keyset()) {
    system.out.println(key + "--->" + map.get(key));
    }
    // 定义 bufferedreader输入流来读取url的响应
    in = new bufferedreader(new inputstreamreader(
      connection.getinputstream()));
    string line;
    while ((line = in.readline()) != null) {
    result += line;
    }
  } catch (exception e) {
    system.out.println("发送get请求出现异常!" + e);
    e.printstacktrace();
  }
  // 使用finally块来关闭输入流
  finally {
    try {
    if (in != null) {
      in.close();
    }
    } catch (exception e2) {
    e2.printstacktrace();
    }
  }
  return result;
  }
  /**
   * 向指定 url 发送post方法的请求
   * @param url
   *    发送请求的 url
   * @param param
   *    请求参数,请求参数应该是 name1=value1&name2=value2 的形式。
   * @return 所代表远程资源的响应结果
   */
  public static string sendpost(string url) {
  printwriter out = null;
  bufferedreader in = null;
  string result = "";
  try {
    url realurl = new url(url);
    // 打开和url之间的连接
    urlconnection conn = realurl.openconnection();
    // 设置通用的请求属性
    conn.setrequestproperty("accept", "*/*");
//    conn.setrequestproperty("connection", "keep-alive");
    conn.setrequestproperty("content-type", "application/json; charset=utf-8"); 
//    conn.setrequestproperty("user-agent",
//      "mozilla/4.0 (compatible; msie 6.0; windows nt 5.1;sv1)");
    // 发送post请求必须设置如下两行
    conn.setdooutput(true);
    conn.setdoinput(true);
    // 获取urlconnection对象对应的输出流
    out = new printwriter(conn.getoutputstream());
    // 发送请求参数
//    out.print(param);
    // flush输出流的缓冲
    out.flush();
    // 定义bufferedreader输入流来读取url的响应
    in = new bufferedreader(
      new inputstreamreader(conn.getinputstream()));
    string line;
    while ((line = in.readline()) != null) {
    result += line;
    }
  } catch (exception e) {
    system.out.println("发送 post 请求出现异常!"+e);
    e.printstacktrace();
  }
  //使用finally块来关闭输出流、输入流
  finally{
    try{
    if(out!=null){
      out.close();
    }
    if(in!=null){
      in.close();
    }
    }
    catch(ioexception ex){
    ex.printstacktrace();
    }
  }
  return result;
  }  
  public static void main(string[] args) {
//   document doc = jsoup.parse("http://xxx/xxxx?entname=餐饮管理有限公司");
//   system.out.println(doc);
  //发送 get 请求
  string s=httputils.sendpost("http://xxxxxxxx?entname=餐饮管理有限公司");
  system.out.println(s);
  //发送 post 请求
//  string sr=httputils.sendpost("http://localhost:6144/home/requestpoststring", "key=123&v=456");
//  system.out.println(sr);
  }
}
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对CodeAE代码之家的支持。如果你想了解更多相关内容请查看下面相关链接
原文链接:https://blog.csdn.net/qq_26562641/article/details/73549788

关注下面的标签,发现更多相似文章