httpfetch 快速使用-一款java语言编写优雅的http接口调用组件
2018-02-10 16:15
603 查看
通过两三行代码就可以快速的进行http访问且接口代码更易阅读。
1.pom中引入配置:<dependency>
<groupId>com.github.youzan</groupId>
<artifactId>http-fetch</artifactId>
<version>1.1.7</version>
</dependency>2.编写接口类:public interface BookWormHttpApi {
/**
*
* 新增一个 拦截的chain 用于增加特定请求的token
* @see[BookWormTokenChain]
* @param file
* @param name
* @param nValue
* @return
*/
@HttpApi(timeout = 2000, url = "http://bookworm365.com/uploadImage")
@BookWormApi
UploadFileResponseVo uploadFile(@FormParam("file") File file,
@QueryParam("name") String name,
@QueryParam("n_value") String nValue);
/**
*
* 新增一个 拦截的chain 用于增加特定请求的token
* @see[BookWormTokenChain]
* @param url
* @param name
* @param nValue
* @return
*/
@HttpApi(timeout = 2000, url = "http://bookworm365.com/uploadImage")
@BookWormApi
UploadFileResponseVo uploadFile(@FormParam("file") URL url,
@QueryParam("name") String name,
@QueryParam("n_value") String nValue);
@HttpApi(timeout = 2000, url = "http://bookworm365.com/uploadImage")
@BookWormApi
UploadFileResponseVo uploadFile(@BeanParam @FormParam UploadFileRequestVo requestVo);
@HttpApi(timeout = 2000, url = "http://bookworm365.com/checkHeader")
@BookWormApi
String checkHeader();
}
3.编写调用类:
@Test
public void test_upload_file_common() throws Exception {
HttpApiService httpApiService = new HttpApiService(new HttpApiConfiguration());
httpApiService.init();
BookWormHttpApi bookWormHttpApi = httpApiService.getOrCreateService(BookWormHttpApi.class);
URL url = BookWormHttpApiTest.class.getClassLoader().getResource("httpapi.xml");
File file = new File(url.toURI());
UploadFileResponseVo responseVo = bookWormHttpApi.uploadFile(file, "name", "nValue");
System.out.println(JSON.toJSONString(responseVo));
responseVo = bookWormHttpApi.uploadFile(new URL("http://onlz2qizd.bkt.clouddn.com/800_800.png"), "name", "nValue");
System.out.println(JSON.toJSONString(responseVo));
}
1.pom中引入配置:<dependency>
<groupId>com.github.youzan</groupId>
<artifactId>http-fetch</artifactId>
<version>1.1.7</version>
</dependency>2.编写接口类:public interface BookWormHttpApi {
/**
*
* 新增一个 拦截的chain 用于增加特定请求的token
* @see[BookWormTokenChain]
* @param file
* @param name
* @param nValue
* @return
*/
@HttpApi(timeout = 2000, url = "http://bookworm365.com/uploadImage")
@BookWormApi
UploadFileResponseVo uploadFile(@FormParam("file") File file,
@QueryParam("name") String name,
@QueryParam("n_value") String nValue);
/**
*
* 新增一个 拦截的chain 用于增加特定请求的token
* @see[BookWormTokenChain]
* @param url
* @param name
* @param nValue
* @return
*/
@HttpApi(timeout = 2000, url = "http://bookworm365.com/uploadImage")
@BookWormApi
UploadFileResponseVo uploadFile(@FormParam("file") URL url,
@QueryParam("name") String name,
@QueryParam("n_value") String nValue);
@HttpApi(timeout = 2000, url = "http://bookworm365.com/uploadImage")
@BookWormApi
UploadFileResponseVo uploadFile(@BeanParam @FormParam UploadFileRequestVo requestVo);
@HttpApi(timeout = 2000, url = "http://bookworm365.com/checkHeader")
@BookWormApi
String checkHeader();
}
3.编写调用类:
@Test
public void test_upload_file_common() throws Exception {
HttpApiService httpApiService = new HttpApiService(new HttpApiConfiguration());
httpApiService.init();
BookWormHttpApi bookWormHttpApi = httpApiService.getOrCreateService(BookWormHttpApi.class);
URL url = BookWormHttpApiTest.class.getClassLoader().getResource("httpapi.xml");
File file = new File(url.toURI());
UploadFileResponseVo responseVo = bookWormHttpApi.uploadFile(file, "name", "nValue");
System.out.println(JSON.toJSONString(responseVo));
responseVo = bookWormHttpApi.uploadFile(new URL("http://onlz2qizd.bkt.clouddn.com/800_800.png"), "name", "nValue");
System.out.println(JSON.toJSONString(responseVo));
}
相关文章推荐
- httpfetch-一款java语言编写优雅的http接口调用组件
- httpfetch http重试策略-一款java语言编写优雅的http接口调用组件
- delphi调用java编写的http接口
- 使用httpclient传递java参数调用http接口
- JAVA使用httpUrlConnection 调用http接口
- Java中使用HttpRequest调用RESTfull的DELETE方法接口提示:How to fix HTTP method DELETE doesn't support output
- 使用httpclient传递java参数调用http接口
- 使用http调用java后台接口
- JNode(Java New Operating System Design Effort)是一款主要使用Java语言编写的开源操作系统[zt]
- delphi调用java编写的http接口
- java 使用URLConnection 进行HTTP接口调用
- JNA使用---Java 和 C 语言之间的调用
- 《转》使用httpclient实现http接口调用实例
- 在java中使用Jawin组件访问Windows下的COM组件 java调用ole
- Java使用Axis2调用NET编写的WCFService问题
- 使用httpclient实现http接口调用实例
- 使用Java语言编写程序最容易犯的21种错误
- 关于使用java从http接口取数据保存到本地文件的中文乱码处理
- java编写webService与使用jquery调用