Skip to content

Latest commit

 

History

History
65 lines (40 loc) · 2.1 KB

README.md

File metadata and controls

65 lines (40 loc) · 2.1 KB

httphelper

一个辅助写出http请求的工具包

一键接入spring-boot教程:

Application.java中,用@EnableHttpHelper 注解标注类,但是需要注明所有要注入的http的接口的包名

e.g:

@EnableHttpHelper(basePackages = { "sava.password.dou.jin.config" })
public class Application {
public static void main(String[] args) {
	SpringApplication.run(Application.class, args);
}
}

在这里sava.password.dou.jin.config包下 是有一个类:

package sava.password.dou.jin.config;
import com.rrc.finance.httphelper.annos.HttpRequestHelper;
import com.rrc.finance.httphelper.enums.RequestMethod;
import sava.password.dou.jin.Result;
public interface HttpBaidu {

@HttpRequestHelper(method = RequestMethod.GET, 
		url = "https://suggest.taobao.com/sug", 
		octoKey = "111", 
		octoSecret = "111")
Result toBaidu();

}

用 @HttpRequestHelper 标注的方法则会被代理,这个注解里method和url是必填项 ,返回值是这个http接口返回字符串的解析,如果是json串,则可以直接创建实体类进行接收,如果是只要知道是否调用成功不需要得到返回,则用boolean接收,true则调用成功,false则调用失败。

简单来说:有返回值的用返回值来判断是否调用接口成功,没有返回值的用boolean 来接收并判断。

另外,有4个注解:

@GetParam   用来标注get请求的参数  只能是Map<String,Object>
@PostParam	用来标注post请求的参数,只能是json序列化后的String
@FormParam   用来标注当contentType = application/x-www-form-urlencoded 的请求参数,为Map<String,Object>
@PathParam	用来标注url的路径参数 ,如url = http://www.baidu.com/%s/%s,url路径有两个请求参数,则@PathParam标注那两个参数,强制使用String[]

然后即可在spring项目中使用 AutoWired注解来加载HttpBaidu类,让spring来代理这个类,调用时即可拿到结果

e.g:

@Autowired
private HttpBaidu httpBaidu;

@GetMapping("/test")
public String getString(){
	
	Result re = httpBaidu.toBaidu();
	System.out.println(re.getResult());
	return "";
}