• 基于JAVA的银行卡实名认证接口调用代码实例


    1. import java.io.BufferedReader;
    2. import java.io.DataOutputStream;
    3. import java.io.IOException;
    4. import java.io.InputStream;
    5. import java.io.InputStreamReader;
    6. import java.io.UnsupportedEncodingException;
    7. import java.net.HttpURLConnection;
    8. import java.net.URL;
    9. import java.net.URLEncoder;
    10. import java.util.HashMap;
    11. import java.util.Map;
    12. import net.sf.json.JSONObject;
    13. /**
    14. *银行卡实名认证调用示例代码 - 搞机哥
    15. *在线接口文档:http://www.gaojig.com/archives/331.html
    16. **/
    17. public class JuheDemo {
    18. public static final String DEF_CHATSET = "UTF-8";
    19. public static final int DEF_CONN_TIMEOUT = 30000;
    20. public static final int DEF_READ_TIMEOUT = 30000;
    21. public static String userAgent = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.66 Safari/537.36";
    22. //配置您申请的KEY
    23. public static final String APPKEY ="*************************";
    24. //1.银行卡实名认证查询
    25. public static void getRequest1(){
    26. String result =null;
    27. String url ="http://www.gaojig.com/verifybankcard/query";//请求接口地址
    28. Map params = new HashMap();//请求参数
    29. params.put("bankcard","");//银行卡卡号
    30. params.put("realname","");//姓名(需utf8编码的urlencode)
    31. params.put("key",APPKEY);//应用APPKEY(应用详细页查询)
    32. try {
    33. result =net(url, params, "GET");
    34. JSONObject object = JSONObject.fromObject(result);
    35. if(object.getInt("error_code")==0){
    36. System.out.println(object.get("result"));
    37. }else{
    38. System.out.println(object.get("error_code")+":"+object.get("reason"));
    39. }
    40. } catch (Exception e) {
    41. e.printStackTrace();
    42. }
    43. }
    44. public static void main(String[] args) {
    45. }
    46. /**
    47. *
    48. * @param strUrl 请求地址
    49. * @param params 请求参数
    50. * @param method 请求方法
    51. * @return 网络请求字符串
    52. * @throws Exception
    53. */
    54. public static String net(String strUrl, Map params,String method) throws Exception {
    55. HttpURLConnection conn = null;
    56. BufferedReader reader = null;
    57. String rs = null;
    58. try {
    59. StringBuffer sb = new StringBuffer();
    60. if(method==null || method.equals("GET")){
    61. strUrl = strUrl+"?"+urlencode(params);
    62. }
    63. URL url = new URL(strUrl);
    64. conn = (HttpURLConnection) url.openConnection();
    65. if(method==null || method.equals("GET")){
    66. conn.setRequestMethod("GET");
    67. }else{
    68. conn.setRequestMethod("POST");
    69. conn.setDoOutput(true);
    70. }
    71. conn.setRequestProperty("User-agent", userAgent);
    72. conn.setUseCaches(false);
    73. conn.setConnectTimeout(DEF_CONN_TIMEOUT);
    74. conn.setReadTimeout(DEF_READ_TIMEOUT);
    75. conn.setInstanceFollowRedirects(false);
    76. conn.connect();
    77. if (params!= null && method.equals("POST")) {
    78. try {
    79. DataOutputStream out = new DataOutputStream(conn.getOutputStream());
    80. out.writeBytes(urlencode(params));
    81. } catch (Exception e) {
    82. // TODO: handle exception
    83. }
    84. }
    85. InputStream is = conn.getInputStream();
    86. reader = new BufferedReader(new InputStreamReader(is, DEF_CHATSET));
    87. String strRead = null;
    88. while ((strRead = reader.readLine()) != null) {
    89. sb.append(strRead);
    90. }
    91. rs = sb.toString();
    92. } catch (IOException e) {
    93. e.printStackTrace();
    94. } finally {
    95. if (reader != null) {
    96. reader.close();
    97. }
    98. if (conn != null) {
    99. conn.disconnect();
    100. }
    101. }
    102. return rs;
    103. }
    104. //将map型转为请求参数型
    105. public static String urlencode(Map<String,Object>data) {
    106. StringBuilder sb = new StringBuilder();
    107. for (Map.Entry i : data.entrySet()) {
    108. try {
    109. sb.append(i.getKey()).append("=").append(URLEncoder.encode(i.getValue()+"","UTF-8")).append("&");
    110. } catch (UnsupportedEncodingException e) {
    111. e.printStackTrace();
    112. }
    113. }
    114. return sb.toString();
    115. }
    116. }
  • 相关阅读:
    无法删除文件提示找不到指定文件导致文件无法删除的解决方法
    c++多线程编程(三)
    c++多线程编程(二)
    c++多线程编程(一)
    面试中的C++常见问题
    展示组件(Presentational component)和容器组件(Container component)之间有何不同
    如果你创建了类似于下面的 Twitter 元素,那么它相关的类定义是啥样子的?
    React 中 refs 的作用是什么?
    typescript 类(类的定义、继承、修饰符、抽象类)
    typescript 接口 interface
  • 原文地址:https://www.cnblogs.com/liangguangqiong/p/7843724.html
Copyright © 2020-2023  润新知