自己项目的HttpGet请求另一个项目里的方法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_23145857/article/details/82012352

 static public String SMSsend(String SignName, String TemplateCode,String  UserName,String Mobile,String  Content) throws Exception {
         
            String url = "";
            
String  content0= Content;url ="http://wechat.tagen-pm.com/property-wechat-service/sms/tagensmstest/"+SignName+"/"+TemplateCode+"/"+UserName+"/"+Mobile+"/"+content0+"";
            

            logger.warn(url+"代注册短信发送  mobileNo:" + Mobile + " msg: " + content0);
           /* String result = "";
            try {

                URL U = new URL(url);
                URLConnection connection = U.openConnection();
                connection.connect();
                BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
                String line;
                while ((line = in.readLine()) != null) {
                    result += line;
                }
                in.close();
            } catch (Exception e) {
                throw e;
            }

            if (result.indexOf("1") != 0) {
                logger.error("系统异常,短信发送失败 " + Mobile);
            }
            return result;*/
            
            // 配置请求信息(请求时间)
            RequestConfig rc = RequestConfig.custom().setSocketTimeout(5000)
                    .setConnectTimeout(5000).build();
            // 获取使用DefaultHttpClient对象
            CloseableHttpClient httpclient = HttpClients.createDefault();
            // 返回结果
            String result = null;
            try {
                if (url != null) {
                    // 创建HttpGet对象,将URL通过构造方法传入HttpGet对象
                    HttpGet httpget = new HttpGet(url);
                    // 将配置好请求信息附加到http请求中
                    httpget.setConfig(rc);
                    // 执行DefaultHttpClient对象的execute方法发送GET请求,通过CloseableHttpResponse接口的实例,可以获取服务器返回的信息
                    CloseableHttpResponse response = httpclient.execute(httpget);
                    try {
                        // 得到返回对象
                        HttpEntity entity = response.getEntity();
                        if (entity != null) {
                            // 获取返回结果
                            result = EntityUtils.toString(entity);
                        }
                    } finally {
                        // 关闭到客户端的连接
                        response.close();
                    }
                }
            } catch (ClientProtocolException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            } finally {
                try {
                    // 关闭http请求
                    httpclient.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return result;

        
        }

另一个项目里的SendSmsController:

@RequestMapping("/sms")
@Controller
public class SendSmsController {
    @Autowired
    private SendMsgService sendMsgService;
    /**
     * 获取登录用户IP地址
     * 
    * @param request
    * @return
     */
    public static String getIpAddr(HttpServletRequest request) {
       String ip = request.getHeader("x-forwarded-for");
       if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
           ip = request.getHeader("Proxy-Client-IP");
   }
    if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
          ip = request.getHeader("WL-Proxy-Client-IP");
      }
       if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
           ip = request.getRemoteAddr();
      }
      if (ip.equals("0:0:0:0:0:0:0:1")) {
          ip = "本地";
     }
       return ip;
  }
    @RequestMapping(value="/sms/{SignName}/{TemplateCode}/{UserName}/{Mobile}/{Content}")
    public boolean SendSms(HttpServletRequest request,@PathVariable String SignName,@PathVariable String TemplateCode,@PathVariable String UserName,@PathVariable String Mobile,@PathVariable String Content){
          String  ip=    getIpAddr(request);
        Sms sms1 = new Sms();
        AliyunSms aliyunsms1=new AliyunSms();
        aliyunsms1.setName(SignName);
        aliyunsms1.setName(TemplateCode);
        aliyunsms1.setName(UserName);
        aliyunsms1.setNum(Mobile);
        aliyunsms1.setContent( Content);
        sendMsgService.addMessageCode(Mobile, "", Content, TemplateCode, ip);
        boolean k=sms1.AliyunSend(aliyunsms1);
        if(k){sendMsgService.updateCode(Mobile);}
        return k;
    }
    @RequestMapping(value="/tagensmstest/{SignName}/{TemplateCode}/{UserName}/{Mobile}/{Content}")
    public String SendSmstest(HttpServletRequest request,@PathVariable String SignName,@PathVariable String TemplateCode,@PathVariable String UserName,@PathVariable String Mobile,@PathVariable String Content){
          String  ip=    getIpAddr(request);
        Sms sms1 = new Sms();
        AliyunSms aliyunsms1=new AliyunSms();
        aliyunsms1.setName(SignName);
        aliyunsms1.setName(TemplateCode);
        aliyunsms1.setName(UserName);
        aliyunsms1.setNum(Mobile);
        aliyunsms1.setContent( Content);
        sendMsgService.addMessageCode(Mobile, "", Content, TemplateCode, ip);
        boolean k=sms1.AliyunSend(aliyunsms1);
        String result="";
        if(k){
            sendMsgService.updateCode(Mobile);
            result= "redirect:/sms/smssucess";
        }else{
            result= "redirect:/sms/smsfalse";
        }
        
        return result;
    }
    
    @RequestMapping(value="/smsfalse")
    public ModelAndView SendSmsfalse(HttpServletRequest request){
         Map<String, Object> smsfalse = new HashMap<String, Object>();
        return new ModelAndView("template/smsfalse", smsfalse);
    }
    
    @RequestMapping(value="/smssucess")
    public ModelAndView SendSmssucess(){
         Map<String, Object> smssucess = new HashMap<String, Object>();
        return new ModelAndView("template/smssucess", smssucess);
    }

猜你喜欢

转载自blog.csdn.net/qq_23145857/article/details/82012352