vertx 代码不执行

发布于 2021-11-26 04:05:16 字数 2531 浏览 757 评论 1

public class SendUrlToSaas {
	private static Vertx vertx = Vertx.vertx();
	private Logger logger = LoggerFactory.getLogger(SendUrlToSaas.class.getName());
	private final static String JKS_NAME = "fxiaoke.jks";

	public void sendUrl(){
		String requestHeader = getFileMessage("requestHeader");
		String requestBody = getFileMessage("requestBody");
		/*
		 * 缺少判断
		 */
		if(null == requestHeader){
			logger.debug("Can't read file of url.template ");
			return;
		}
		JsonObject jsonHeader = new JsonObject(requestHeader);
		HttpClientOptions options = new HttpClientOptions().setKeyStoreOptions(getCustomJksOption())
				.setSsl(true).setTrustAll(true).setDefaultPort(443).setVerifyHost(false);
		HttpClient httpClient = vertx.createHttpClient(options);
		HttpClientRequest request = httpClient.request(HttpMethod.POST, 443, jsonHeader.getString("Host"), jsonHeader.getString("url"), responseHandler->{
			System.err.println("执行到了这儿了!");
			/*MultiMap map = responseHandler.trailers();
			List<Map.Entry<String,String>> list = map.entries();
			for(Map.Entry<String, String> me:list){
				System.out.println(me.getKey());
				System.out.println(me.getValue());
			}*/
			/*responseHandler.bodyHandler(body->{
				try {
					System.out.println(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
					System.out.println("输出为"+body.toString());
				} catch (Exception e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			});*/
		});
		Iterator<Map.Entry<String, Object>> it = jsonHeader.iterator();
		while(it.hasNext()){
			Map.Entry<String,Object> map = it.next();
			request.putHeader(map.getKey(), (String)map.getValue());
		}
		request.putHeader("Expect", "100-Continue");
		request.continueHandler(v ->{
			System.err.println("--------->>>>>>>>>>>>>>>>>>>>.");
			request.write(requestBody);
			request.end();
		});
	//	request.end();
	}

我的这段代码总是不执行

request.continueHandler(v ->{
			System.err.println("--------->>>>>>>>>>>>>>>>>>>>.");
			request.write(requestBody);
			request.end();
		});



括号里面的三行代码,哪位大神可以给我指导一下!



如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

空城仅有旧梦在 2021-11-29 09:21:47

问题解决了,版本太旧了的问题,

request.putHeader("Expect", "100-Continue");
request.write(requestBody);
request.end();

改成这样就可以了

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文