报错信息
这是我在项目操作中的一个HttpClient进行抓取数据发送请求的时候报的一个错,看一下报错的全部信息:
java.net.MalformedURLException: no protocol:
at java.net.URL.<init>(URL.java:596)
at java.net.URL.<init>(URL.java:493)
at java.net.URL.<init>(URL.java:442)
at test.HttpClientUtil.httpPost(HttpClientUtil.java:342)
at test.HttpClientUtil.main(HttpClientUtil.java:287)
问题描述:
我发送HttpClient用POST发送的一个带参数的一个信息:
比如我现在要请求百度
https://www.baidu.com/?tn=44004473_2_oem_dg
Http解析:www.baidu.com 这个是我要请求的一个网址;tn是请求的带参的参数,网站通过我的参数给我返回给我一些信息。
而我分析出来的就是我带参数的时候我的tn后边是没有带值是一个NULL所以抛出了这样的一个错误。
解决方案:
检查一下自己的请求的参数是不是NULL的,做一下判空处理,在发送请求参数的时候可以打印点日志看看是不是你的参数是有的,当时郁闷了我好久,最后看打印的日志看出来这个问题。