首页 / JAVA / 后台通过api解析成java代码
后台通过api解析成java代码
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了后台通过api解析成java代码,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2956字,纯文字阅读大概需要5分钟。
内容图文
![后台通过api解析成java代码](/upload/InfoBanner/zyjiaocheng/850/ed711d7aca774e0296e0e2c34a4aac90.jpg)
首先就是随便给了一个api:
http://10.10.60.150:6001/api/v1/*******
用postman可以先测试一下能否通过
ok,这个借口是直接可以用的。
创建一个类
package test;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.net.HttpURLConnection;
import java.net.URL;
/**
*
* @author 作者 Bowen
* @data 创建时间:2018年10月22日 下午5:26:09
* @ClassName RestUtil
* @Description
*
*/
public class RestUtil {
public String test(String url, String query) throws Exception {
URL restURL = new URL(url);
/*
* 此处的urlConnection对象实际上是根据URL的请求协议(此处是http)生成的URLConnection类
* 的子类HttpURLConnection
*/
HttpURLConnection conn = (HttpURLConnection) restURL.openConnection();
// 请求方式
conn.setRequestMethod("GET");
// 设置是否从httpUrlConnection读入,默认情况下是true; httpUrlConnection.setDoInput(true);
conn.setDoOutput(false);
// allowUserInteraction 如果为 true,则在允许用户交互(例如弹出一个验证对话框)的上下文中对此 URL 进行检查。
conn.setAllowUserInteraction(false);
conn.setRequestProperty("Accept","application/json");
if (null != query) {
PrintStream ps = new PrintStream(conn.getOutputStream());
ps.print(query);
ps.close();
}
BufferedReader bReader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line, resultStr = "";
while (null != (line = bReader.readLine())) {
resultStr += line;
}
bReader.close();
return resultStr;
}
public static void main(String[] args) {
try {
RestUtil restUtil = new RestUtil();
String resultString = restUtil.test(
"http://10.10.60.150:6001/api/v1/*******", "username=abc&password=123456");
System.out.println("hahah " + resultString);
} catch (Exception e) {
// TODO: handle exception
System.out.print(e.getMessage());
}
}
}
右键run,搞定。
------------------------下面这段是借鉴学习笔记----------------------------
把一个map的键值对拼接成“参数=值&参数=值”即“username=angusbao&password=123456”这种形式方便传递,尤其是在接口调用的时候,这种方式使用的更加普遍,比如http请求的get方式。
/**
* 把数组所有元素排序,并按照“参数=参数值”的模式用“&”字符拼接成字符串
* @param params 需要排序并参与字符拼接的参数组
* @return 拼接后字符串
* @throws UnsupportedEncodingException
*/
public static String createLinkStringByGet(Map<String, String> params) throws UnsupportedEncodingException {
List<String> keys = new ArrayList<String>(params.keySet());
Collections.sort(keys);
String prestr = "";
for (int i = 0; i < keys.size(); i++) {
String key = keys.get(i);
String value = params.get(key);
value = URLEncoder.encode(value, "UTF-8");
if (i == keys.size() - 1) {//拼接时,不包括最后一个&字符
prestr = prestr + key + "=" + value;
} else {
prestr = prestr + key + "=" + value + "&";
}
}
return prestr;
}
public static void main(String[] args) throws UnsupportedEncodingException {
Map<String,String> map= new HashMap<String,String>();
map.put("1", "hello");
map.put("2", "world");
System.out.println(createLinkStringByGet(map));
}
结果为:1=hello&2=world
注:此博文纯属个人笔记收藏,仅供学习,如有雷同纯属巧合
内容总结
以上是互联网集市为您收集整理的后台通过api解析成java代码全部内容,希望文章能够帮你解决后台通过api解析成java代码所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。