最近需要一个短信业务的接口,发送http请求来发送短信,因为网上给的代码混乱不统一,自己实现了一个,以便自己以后自己使用java发送http请求。

import org.apache.commons.httpclient.Header;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.methods.PostMethod;/*** Created by yan on 2016/8/5.*/
public class HttpUtil {public static void main(String[] args){HttpUtil httpUtil = new HttpUtil();httpUtil.SendMessage("http://sms.coocaatv.com/sms/down/",httpUtil.getXmlInfo("13012345678","发送的信息"));}public void SendMessage(String url,String xmlFilename){HttpClient httpClient = new HttpClient();PostMethod postMethod = new PostMethod(url);postMethod.addRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");postMethod.setRequestBody(xmlFilename);try {httpClient.executeMethod(postMethod);Header[] headers = postMethod.getResponseHeaders();int statusCode = postMethod.getStatusCode();System.out.println("code:"+statusCode);for(Header h : headers){System.out.println(h.toString());}String result = new String(postMethod.getResponseBodyAsString().getBytes("GBK"));//打印返回的结果System.out.println(result);postMethod.releaseConnection();}catch (Exception e){e.printStackTrace();}}public String getXmlInfo(String phonenumber,String message) {StringBuilder sb = new StringBuilder();//可能每个运营商要求的发送后缀格式不一致,需要自己判断手机号int state = matchesPhoneNumber(phonenumber);if(state==2){message = message+"[]";}else{message = message+"【】";}sb.append("<?xml version=\"1.0\" encoding=\"utf-8\"?>");sb.append("<data>");sb.append("</data>");return sb.toString();}public static int matchesPhoneNumber(String phone_number) {//移动String cm = "^((13[4-9])|(147)|(15[0-2,7-9])|(18[2-3,7-8]))\\d{8}$";//联通String cu = "^((13[0-2])|(145)|(15[5-6])|(186))\\d{8}$";//电信String ct = "^((133)|(153)|(18[0,9]))\\d{8}$";int flag = 0;if (phone_number.matches(cm)) {flag = 1;} else if (phone_number.matches(cu)) {flag = 2;} else if (phone_number.matches(ct)) {flag = 3;} else {flag = 4;}return flag;}}

转载于:https://www.cnblogs.com/yankang/p/6399026.html

Java 实现发送Http请求相关推荐

  1. java httpclient发送json 请求 ,go服务端接收

    /***java客户端发送http请求*/package com.xx.httptest;/*** Created by yq on 16/6/27.*/import java.io.IOExcept ...

  2. JAVA后台发送http请求

    JAVA后台发送http请求 代码: @RequestMapping("/check")@ResponseBodypublic Map check(Integer cashReco ...

  3. Java 常用工具类(12) : java后台发送http请求

    参考 : java http 发送post请求-json格式_Oh_go_boy的博客-CSDN博客 Java发送Http请求 - 玄同太子 - 博客园 org.apache.http 在Maven中 ...

  4. java后台发送https请求(基于httpTemplate的httpUtil工具实现)

    最近做连续做了一些java后台发送http请求的需求,发现项目里实现http请求的写法各异,不够简洁统一,于是基于httpTemplate自行封装了一个http请求工具,常见的json和octet-s ...

  5. java请求servlet,[Java]Servlet发送Post请求

    演示实例:AServlet发送一个Student对象到BServlet #### 1.AServlet部分 首先造一个学生stu,然后通过fastjson的`toJSONString`方法把对象转换成 ...

  6. java http请求_如何设置Fiddler来拦截Java代码发送HTTP请求,进行各种问题排查

    我们使用Java的RestTemplate或者Apache的HTTPClient编程的时候,经常遇到需要跟踪Java 代码发送的HTTP请求明细的情况.和javascript代码在浏览器里发送请求可以 ...

  7. Java模拟发送post请求

    项目要求:模拟100个温湿度设备发送温湿度数据进行压测,查看数据是否有叠加且显示正确,因为测试环境简陋,没有100个温湿度设备,只能通过调用接口模拟发送请求,由于每次发送的请求要求正文某些元素值要唯一 ...

  8. java后端发送http请求

    一.新建一个工具类:HttpRequestUril package com.tfjybj.dtc.crawl.util;import java.io.*; import java.net.*; imp ...

  9. java实现发送post请求

    1 背景介绍 最近有一个任务,完成数据获取和解析,需要发送带请求参数的post请求,才能拿到数据.之前没有接触过java发送post请求,但有接触过python的requets库,故写下这篇记录一下发 ...

  10. Java模拟发送Http请求详细示例

    对接第三方接口,肯定是需要我们自己模拟浏览器来发送请求的,有的文档中有demo,有demo改一改参数配置就好了,但有的接口却没有demo,只有一份接口参数介绍文档,这时候就需要我们自己来写发送请求的代 ...

最新文章

  1. .net core 2.0 HTTPS request fails using HttpClient 安全错误
  2. Environment variable ORACLE_UNQNAME not defined错误解决
  3. python数据清理的实践总结_python 数据的清理行为实例详解
  4. SSM框架前台传中文到后台乱码问题的解决办法
  5. RocketMQ快速入门之手动创建topic
  6. Apache OpenJPA 2.1.0 发布
  7. ant java 外部jar包_java – 在使用Ant的新jar文件构建中包括外部jar文件
  8. python定义数据框大小_python – 如何设置框架的最小和最大高度或宽度?
  9. 资源过于硬核,8h删!这波福利....请笑纳~
  10. 如何在Mac上直接删除文件而不将其发送到垃圾箱?
  11. 为什么不能线程调用类的成员函数_SLAM从0到1——13.SLAM中的多线程编程(2)
  12. 魔法风云纪无限元宝公益服务器,好玩网页游戏 2678魔法风云纪sf 神兽助战卡免费获得...
  13. ReactNative之 Activity class {xxx/xxx.MainActivity} does not exist
  14. 什么是数据挖掘,机器学习与数据挖掘主要有什么联系?
  15. 第一章 网络入门【仅参考】
  16. 2022下半年软件设计师中级考试通过
  17. MATLAB之线性回归方程模型
  18. Android 头像上传
  19. vue2.0_实现图片上传前进行压缩(约10倍)
  20. android待机动画,Android 忆童年 DVD机待机 loading 动画

热门文章

  1. 高级软件测试11.27日小组工作-1701班第5组
  2. XMPP聊天环境配置
  3. 《算法竞赛入门经典》习题及反思 -2
  4. 安卓旅途之——开发数独(总结)
  5. mysql主从复制浅析(一)
  6. 用条件注释判断浏览器版本,解决兼容问题
  7. 给定一个数组,寻找次大的数 (1)
  8. Note for Consulting Handbook3
  9. [转]使用SCOM 2012监控网络
  10. 《HTML 5与CSS 3 权威指南(第3版·上册)》——第1章 Web时代的变迁