javapostmethod参数(postmethod传递参数)

本篇文章给大家谈谈javapostmethod参数,以及postmethod传递参数对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

1、java如何实现发送短信验证码功能?2、Java客户端调用Webservice接口流程3、Java代码转C#

java如何实现发送短信验证码功能?

1、创建一个Http的模拟请求工具类,然后写一个POST方法或者GET方法

/** * 文件说明 * @Description:扩展说明 * @Copyright: XXXX dreamtech.com.cn Inc. All right reserved * @Version: V6.0 */package com.demo.util; import java.io.IOException;import java.util.Map; import org.apache.commons.httpclient.HttpClient;import org.apache.commons.httpclient.HttpException;import org.apache.commons.httpclient.SimpleHttpConnectionManager;import org.apache.commons.httpclient.methods.GetMethod;import org.apache.commons.httpclient.methods.PostMethod; /** * @Author: feizi * @Date: XXXX年XX月XX日 XX:XX:XX * @ModifyUser: feizi * @ModifyDate: XXXX年XX月XX日 XX:XX:XX * @Version:V6.0 */public class HttpRequestUtil { /** * HttpClient 模拟POST请求 * 方法说明 * @Discription:扩展说明 * @param url * @param params * @return String * @Author: feizi * @Date: XXXX年XX月XX日 XX:XX:XX * @ModifyUser:feizi * @ModifyDate: XXXX年XX月XX日 XX:XX:XX */ public static String postRequest(String url, MapString, String params) { //构造HttpClient的实例 HttpClient httpClient = new HttpClient(); //创建POST方法的实例 PostMethod postMethod = new PostMethod(url); //设置请求头信息 postMethod.setRequestHeader(“Connection”, “close”); //添加参数 for (Map.EntryString, String entry : params.entrySet()) { postMethod.addParameter(entry.getKey(), entry.getValue()); } //使用系统提供的默认的恢复策略,设置请求重试处理,用的是默认的重试处理:请求三次 httpClient.getParams().setBooleanParameter(“http.protocol.expect-continue”, false); //接收处理结果 String result = null; try { //执行Http Post请求 httpClient.executeMethod(postMethod); //返回处理结果 result = postMethod.getResponseBodyAsString(); } catch (HttpException e) { // 发生致命的异常,可能是协议不对或者返回的内容有问题 System.out.println(“请检查输入的URL!”); e.printStackTrace(); } catch (IOException e) { // 发生网络异常 System.out.println(“发生网络异常!”); e.printStackTrace(); } finally { //释放链接 postMethod.releaseConnection(); //关闭HttpClient实例 if (httpClient != null) { ((SimpleHttpConnectionManager) httpClient.getHttpConnectionManager()).shutdown(); httpClient = null; } } return result; } /** * HttpClient 模拟GET请求 * 方法说明 * @Discription:扩展说明 * @param url * @param params * @return String * @Author: feizi * @Date: XXXX年XX月XX日 XX:XX:XX * @ModifyUser:feizi * @ModifyDate: XXXX年XX月XX日 XX:XX:XX */ public static String getRequest(String url, MapString, String params) { //构造HttpClient实例 HttpClient client = new HttpClient(); //拼接参数 String paramStr = “”; for (String key : params.keySet()) { paramStr = paramStr + “” + key + “=” + params.get(key); } paramStr = paramStr.substring(1); //创建GET方法的实例 GetMethod method = new GetMethod(url + “?” + paramStr); //接收返回结果 String result = null; try { //执行HTTP GET方法请求 client.executeMethod(method); //返回处理结果 result = method.getResponseBodyAsString(); } catch (HttpException e) { // 发生致命的异常,可能是协议不对或者返回的内容有问题 System.out.println(“请检查输入的URL!”); e.printStackTrace(); } catch (IOException e) { // 发生网络异常 System.out.println(“发生网络异常!”); e.printStackTrace(); } finally { //释放链接 method.releaseConnection(); //关闭HttpClient实例 if (client != null) { ((SimpleHttpConnectionManager) client.getHttpConnectionManager()).shutdown(); client = null; } } return result; }}

2、在创建一个类,生成验证码,然后传递相应的参数(不同的短信平台接口会有不同的参数要求,这个一般短信平台提供的接口文档中都会有的,直接看文档然后按要求来即可)

/** * 文件说明 * @Description:扩展说明 * @Copyright: XXXX dreamtech.com.cn Inc. All right reserved * @Version: V6.0 */package com.demo.util; import java.net.URLEncoder;import java.util.HashMap;import java.util.Map; /** * @Author: feizi * @Date: XXXX年XX月XX日 XX:XX:XX * @ModifyUser: feizi * @ModifyDate: XXXX年XX月XX日 XX:XX:XX * @Version:V6.0 */public class SendMsgUtil { /** * 发送短信消息 * 方法说明 * @Discription:扩展说明 * @param phones * @param content * @return * @return String * @Author: feizi * @Date: 2015年4月17日 下午7:18:08 * @ModifyUser:feizi * @ModifyDate: 2015年4月17日 下午7:18:08 */ @SuppressWarnings(“deprecation”) public static String sendMsg(String phones,String content){ //短信接口URL提交地址 String url = “短信接口URL提交地址”; MapString, String params = new HashMapString, String(); params.put(“zh”, “用户账号”); params.put(“mm”, “用户密码”); params.put(“dxlbid”, “短信类别编号”); params.put(“extno”, “扩展编号”); //手机号码,多个号码使用英文逗号进行分割 params.put(“hm”, phones); //将短信内容进行URLEncoder编码 params.put(“nr”, URLEncoder.encode(content)); return HttpRequestUtil.getRequest(url, params); } /** * 随机生成6位随机验证码 * 方法说明 * @Discription:扩展说明 * @return * @return String * @Author: feizi * @Date: 2015年4月17日 下午7:19:02 * @ModifyUser:feizi * @ModifyDate: 2015年4月17日 下午7:19:02 */ public static String createRandomVcode(){ //验证码 String vcode = “”; for (int i = 0; i 6; i++) { vcode = vcode + (int)(Math.random() * 9); } return vcode; } /** * 测试 * 方法说明 * @Discription:扩展说明 * @param args * @return void * @Author: feizi * @Date: XXXX年XX月XX日 XX:XX:XX * @ModifyUser:feizi * @ModifyDate: XXXX年XX月XX日 XX:XX:XX */ public static void main(String[] args) {// System.out.println(SendMsgUtil.createRandomVcode());// System.out.println(“ecb=12”.substring(1)); System.out.println(sendMsg(“18123456789,15123456789”, “尊敬的用户,您的验证码为” + SendMsgUtil.createRandomVcode() + “,有效期为60秒,如有疑虑请详询XXX-XXX-XXXX【XXX中心】”)); }

然后执行一下,一般的情况下参数传递正确,按照接口文档的规范来操作的话,都会发送成功的,手机都能收到验证码的,然后可能会出现的问题就是:发送的短信内容有可能会出现中文乱码,然后就会发送不成功,按照短信平台的要求进行相应的编码即可。一般都会是UTF-8编码。

Java客户端调用Webservice接口流程

给你看看以前写的获取电话号码归属地的代码的三种方法,然后你就懂了。

import java.io.ByteArrayOutputStream;

import java.io.FileInputStream;

import java.io.IOException;

import java.io.InputStream;

import java.net.HttpURLConnection;

import java.net.URL;

import org.apache.commons.httpclient.HttpClient;

import org.apache.commons.httpclient.HttpException;

import org.apache.commons.httpclient.methods.PostMethod;

public class MobileCodeService {

    public void httpGet(String mobile,String userID) throws Exception

    {

        //;userID=string 

       URL url = new URL(“”+mobile+”userID=”+userID);

       HttpURLConnection conn =(HttpURLConnection)url.openConnection();

       conn.setConnectTimeout(5000);

       conn.setRequestMethod(“GET”);

       

       if(conn.getResponseCode()==HttpURLConnection.HTTP_OK)  //200

       {

          InputStream is= conn.getInputStream();

          

          ByteArrayOutputStream arrayOutputStream = new ByteArrayOutputStream();  //

          

          byte [] buf = new byte[1024];

          int len = -1;

          while((len = is.read(buf))!=-1)

          {

              //获取结果

              arrayOutputStream.write(buf, 0, len);

          }

          

          System.out.println(“Get方式获取的数据是:”+arrayOutputStream.toString());

          arrayOutputStream.close();

          is.close();

       }

    }

    

    

    public void httpPost(String mobile,String userID) throws HttpException, IOException

    {

        //访问路径   

        //HttpClient访问

        

        HttpClient httpClient = new HttpClient();

        PostMethod pm = new PostMethod(“”);

        

        pm.setParameter(“mobileCode”, mobile);

        pm.setParameter(“userID”, userID);

        

        int code= httpClient.executeMethod(pm);

        System.out.println(“状态码:”+code);

        

        //获取结果

        String result = pm.getResponseBodyAsString();

        System.out.println(“获取到的数据是:”+result);

    }

    

    public void SOAP() throws Exception

    {

        HttpClient client = new HttpClient();

        

        PostMethod method = new PostMethod(“”);

        

        //设置访问方法的参数

        method.setRequestBody(new FileInputStream(“C:\\soap.xml”));

        

        method.setRequestHeader(“Content-Type”,”text/xml; charset=utf-8″);

        

        int code= client.executeMethod(method);

        System.out.println(“状态码:”+code);

        

        //获取结果

        String result = method.getResponseBodyAsString();

        System.out.println(“获取到的数据是:”+result);

    }

    

    public static void main(String[] args) throws Exception {

        MobileCodeService mcs=new MobileCodeService();

        mcs.httpGet(“18524012513”, “”);

        //mcs.httpPost(“18524012513”, “”);

        //mcs.SOAP();

    }

}

Java代码转C#

后后后(=新wsdllocation);后。setrequestheader(响应代码,“200”);后。setrequestheader(“编码”、“UTF-8”);后。setrequestheader(“内容类型”、“text/xml;字符集= gbk”);字符串soaprequestdata = buildasyncrequestdata(patametermap);字节[]字节= soaprequestdata。getBytes(“UTF-8”);输入流InputStream =新从字节数组读取的输入流(字节,0字节长度);requestentity requestentity =新inputstreamrequestentity(InputStream,“应用/肥皂+ XML;字符集= UTF-8”);后。setrequestentity(requestentity);defaultcreds =新usernamepasswordcredentials凭据(用户名,密码);HttpClient HttpClient =新httpclient();HttpClient。getstate()。setcredentials(authscope。任何,defaultcreds);int状态码= HttpClient。executemethod(后);返回状态码;

javapostmethod参数(postmethod传递参数)

javapostmethod参数的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于postmethod传递参数、javapostmethod参数的信息别忘了在本站进行查找喔。

本文来自投稿,不代表【】观点,发布者:【

本文地址: ,如若转载,请注明出处!

举报投诉邮箱:253000106@qq.com

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2024年3月30日 17:05:35
下一篇 2024年3月30日 17:12:58

相关推荐

  • javanewstring参数,java 参数

    java关于String作为形参的问题。 change方法中的形参s是主方法中的实参s1或s2的拷贝,修改s的指向并不会影响到s1或s2的指向。 )JAVA里面函数的参数永远都只有一种,就是指向参数地址的拷贝。你上面的例子中,s和obj其中s是拷贝了指向字符串“1”的地址,而obj是拷贝了一份指向入参的引用。 比如你打包一个可运行的jar或者直接运行clas…

    2024年5月20日
    6500
  • 元器件参数资料翻译excel,电子元器件参数查询手册中文

    英文excel表格能直接翻译成中文excel表格吗 1、方法1点击选项进入excel首页,点击选项。点击语言进入页面,点击语言。设置中文模式进入页面,设置中文模式。方法2进入regedit电脑键盘找到Win+R,输入regedit。首先在excel表格的单元格中输入中英文字符,需要将英文字符去除。 2、我们点击电脑左下角的开始菜单,找到office软件,我们…

    2024年5月20日
    5100
  • javamain和voidmain,javamain方法的参数

    同一个Java程序中可以有好几个Main方法吗? 1、一个包内可以出现多个main。main方法是所有程序的入口。只需要main方法所在的类是public修饰即可。没有一个包内不能有多个main的限制。 2、一个项目中可能有很多main方法,但是打包之后要指定使用的main方法只能是一个。比如写了很多类,每个类下可以写一个main方法类做一些简单的单元测试。…

    2024年5月20日
    3000
  • java获取系统参数,java获取参数类型

    java中jsp怎么获取地址栏上的参数? 1、有三种方式可以获得:String str = request.getParameter(唯一值的键name:比如文本框,密码框等);Map requestMap = request.getParameterMap();//得到request的所有信息,并封装到一个map对象里。 2、因为URL采用ISO-8859…

    2024年5月20日
    4300
  • java泛型数组参数,java中数组作为参数应该怎么写

    java学习,泛型方法的泛型参数的判断问题。谢谢~ 1、java中的泛型对象使用instanceof来判断。 2、在定义泛型类或声明泛型类的变量时,使用尖括号来指定形式类型参数。形式类型参数与实际类型参数之间的关系类似于形式方法参数与实际方法参数之间的关系,只是类型参数表示类型,而不是表示值。 3、泛型是Java SE 5的新特性,泛型的本质是参数化类型,也…

    2024年5月20日
    4400
  • linux命令上下,LInux命令设置参数

    Linux有三个查看文件的命令,若希望在查看文件内容过程中可以用光标上… 1、cat:可以显示文件的内容(经常和more搭配使用),或将多个文件合并成一个文件。 2、● Linux操作系统中,网络管理员可以通过修改(34)文件对Web服务器的端口进行配置。 3、查看目录下的所有文件又2种命令:ll 和ls 。ll会列出该文件下的所有文件信息,包括…

    2024年5月20日
    3800
  • linux数学工具的参数描述,linux 数学表达式

    如何在linux上进行数学计算 在。C原始档中字型的格式的设定 首先,点选选单栏上的“设定”选单,然后在弹出来的下拉列表中选择“语言格式设定”,具体操作情况如下图所示:选择“语言格式设定”后,系统会自动弹出语言格式设定对话方块。 红帽linux中C语言编程调用数学函数参考案例如下所示:当需要调用函数的个数比较少时,可以直接在main函数中包含该文件,比如一个…

    2024年5月19日
    4100
  • java中类作为参数,java中类作为一个数据类型

    java如何使用父类作为方法的形参 1、绝对可以,子类引用变量可以当成父类变量使用,这是典型的多态啊。 2、然后定义一个类去初始化这些个人所得税,然后去调用他们的返回个人所得税方法。这个初始化的过程中他会用个人所得税接口做参数。下面是维基百科的代码。 3、如果在子类中调用 ,那么先new 一个参数所在类型的对象a,即 A a = new A(),然后在子类中…

    2024年5月19日
    4000
  • javamainargs参数,java main 参数处理

    JAVA中的MAIN函数中args参数怎么用 这个是运行程序前给它的参数。如果你在你程序要用这个参数的话就需要在运行前指定。 在运行程序的同时,可以通过输入参数给main函数中的接收参数数组args[],供程序内部使用,在Java命令行后面带上参数,Java 虚拟机就直接把它们存放到了main方法中。 String[] args是main函数的形式参数,可以…

    2024年5月19日
    4600
  • c语言二维数组当参数传递,c 二维数组作为参数

    C语言中如何将二维字符数组作为函数参数引用传递 1、不可能达到目的。因为C语言中没有引用这类型,C++才有。另,C/C++都不支持传递数组,只能传递数组的首元素或行指针,所以即使是C++,也只能传递数组指针的引用,而不可能传递数组的引用,因为数组没有引用。 2、函数原型 type fun (type (name*)[size])\x0d\x0a \x0d\x…

    2024年5月19日
    4200

发表回复

登录后才能评论



关注微信