通过http.client解析url返回的数据时为什么中文变成了unicode码

今天在解析json数据的时候得到了一堆这样的数据:{"errNum":0,"errMsg":"success","retData":[{"title":"\u6536\u5e9f\u54c1\u5927\u53d4\u521a\u4e0a\u53f0\uff0c\u5c31\u60e8\u906d\u8bc4\u59d4\u706d\u706f\uff0c\u4f46\u63a5\u4e0b\u6765\u5168\u573a\u90fd\u9707\u60ca\u4e86\uff01","url":"http:\/\/toutiao.com\/group\/6263036756505920002\/","abstract":"\u8ba2\u9605\u6211\u83b7\u53d6\u66f4\u591a\u7cbe\u5f69\u5185\u5bb9\uff01","image_url":"http:\/\/p1.pstatp.com\/list\/2f90009a31a7ee8bb15"}]}

这是因为,为了更好的传输中文,json进行了Unicode编码。

这样一来,我们在解析json之前,就得要先将json数据中的Unicode编码转换为我们使用的中文;

一:http请求数据返回json中string字段包含unicode的转码

 

[java] view plain copy

  1. public static String decodeUnicode(String theString) {    
  2.         char aChar;    
  3.         int len = theString.length();    
  4.         StringBuffer outBuffer = new StringBuffer(len);    
  5.         for (int x = 0; x < len;) {    
  6.             aChar = theString.charAt(x++);    
  7.             if (aChar == '\\') {    
  8.                 aChar = theString.charAt(x++);    
  9.                 if (aChar == 'u') {    
  10.                     // Read the xxxx    
  11.                     int value = 0;    
  12.                     for (int i = 0; i < 4; i++) {    
  13.                         aChar = theString.charAt(x++);    
  14.                         switch (aChar) {    
  15.                         case '0':    
  16.                         case '1':    
  17.                         case '2':    
  18.                         case '3':    
  19.                         case '4':    
  20.                         case '5':    
  21.                         case '6':    
  22.                         case '7':    
  23.                         case '8':    
  24.                         case '9':    
  25.                             value = (value << 4) + aChar - '0';    
  26.                             break;    
  27.                         case 'a':    
  28.                         case 'b':    
  29.                         case 'c':    
  30.                         case 'd':    
  31.                         case 'e':    
  32.                         case 'f':    
  33.                             value = (value << 4) + 10 + aChar - 'a';    
  34.                             break;    
  35.                         case 'A':    
  36.                         case 'B':    
  37.                         case 'C':    
  38.                         case 'D':    
  39.                         case 'E':    
  40.                         case 'F':    
  41.                             value = (value << 4) + 10 + aChar - 'A';    
  42.                             break;    
  43.                         default:    
  44.                             throw new IllegalArgumentException(    
  45.                                     "Malformed   \\uxxxx   encoding.");    
  46.                         }    
  47.         
  48.                     }    
  49.                     outBuffer.append((char) value);    
  50.                 } else {    
  51.                     if (aChar == 't')    
  52.                         aChar = '\t';    
  53.                     else if (aChar == 'r')    
  54.                         aChar = '\r';    
  55.                     else if (aChar == 'n')    
  56.                         aChar = '\n';    
  57.                     else if (aChar == 'f')    
  58.                         aChar = '\f';    
  59.                     outBuffer.append(aChar);    
  60.                 }    
  61.             } else    
  62.                 outBuffer.append(aChar);    
  63.         }    
  64.         return outBuffer.toString();    
  65.     }  

二、普通string含有unicode转码方法

[java] view plain copy

  1. public static String reEncoding(String text, String newEncoding) {   
  2.                String str = null;   
  3.                try {   
  4.                        str = new String(text.getBytes(), newEncoding);   
  5.                } catch (UnsupportedEncodingException e) {   
  6.                        log.error("不支持的字符编码" + newEncoding);   
  7.                        throw new RuntimeException(e);   
  8.                }   
  9.                return str;   
  10.        }   

三、说一下比较奇怪的方案,测试中无意发现的,暂时没弄明白原理(有明白原理的大神,请告知一声,谢谢)

我用HttpClent的post方式获取的json数据,得到的是带Unicode码的数据,需要转换成中文才行,但是转换的时间感觉有点长,就用HttpURLConnection的get方式又试了一下,在不转码的情况下,经过gson解析后,竟然神奇的自动转换成了中文:



简直是太神奇了,而且需要的时间相对于HttpClient的post请求方式的请求和处理时间更短,所以,果断换用HttpURLConnection的get方式了

 

①现在先贴一下HttpURLConnection的get的方式:

[java] view plain copy

  1. @Test  
  2.     public void test() {  
  3.         try {  
  4.             long start = System.currentTimeMillis();  
  5.             URL url = new URL("http://apis.baidu.com/songshuxiansheng/news/news");  
  6.               
  7.             HttpURLConnection connection = (HttpURLConnection) url.openConnection();  
  8.                 connection.addRequestProperty("apikey","0fc807e45a37ce264f45d169646f4a9e" );  
  9.                 String dataString = new String(GsonTools.IsToByte(connection.getInputStream()),"utf-8");  
  10.                 HeadlineJson newsJson = GsonTools.getObjectData(dataString, HeadlineJson.class);  
  11.                 List<Headline>list = newsJson.getRetData();  
  12.                 System.out.println(list.toString());  
  13.                 long end = System.currentTimeMillis();  
  14.                   
  15.             System.out.println("timeGap:"+(end-start));  
  16.         } catch (Exception e) {  
  17.             // TODO Auto-generated catch block  
  18.             e.printStackTrace();  
  19.         }  
  20.     }  


调用的GsonTools的方法:(之前的博文中有写到过)

[java] view plain copy

  1. public static <T> T getObjectData(String jsonString, Class<T> type) {  
  2.   
  3.         T t = null;  
  4.         try {  
  5.             Gson gson = new Gson();  
  6.             t = gson.fromJson(jsonString, type);  
  7.         } catch (JsonSyntaxException e) {  
  8.             // TODO Auto-generated catch block  
  9.             e.printStackTrace();  
  10.         }  
  11.         return t;  
  12.     }  


②然后贴一下HttpClient的post方式:

[java] view plain copy

  1. @Test  
  2.     public void TestHeadLine() {  
  3.         long start = System.currentTimeMillis();  
  4.         List<NameValuePair> params = new ArrayList<NameValuePair>();  
  5.         String url = "http://apis.baidu.com/songshuxiansheng/news/news";  
  6.         String jsonString = HttpUtils.getBaiDuString2(url, params);  
  7.         HeadlineJson lineJson = GsonTools.getObjectData(jsonString, HeadlineJson.class);  
  8.         System.out.println(lineJson.toString());  
  9.         long end = System.currentTimeMillis();  
  10.           
  11.         System.out.println("timeGap:"+(end-start));  
  12.     }  


调用的HttpUtils的方法:

[java] view plain copy

  1. public static String getBaiDuString(String url,List<NameValuePair> params) {  
  2.         String serverDataString = null;  
  3.         HttpPost post = new HttpPost(url);  
  4.         try {  
  5.             post.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));  
  6.             post.addHeader("apikey", UrlUtils.BAIDU_API_KEY);  
  7.             HttpClient client = new DefaultHttpClient();  
  8.             HttpResponse response = client.execute(post);  
  9.             int code = response.getStatusLine().getStatusCode();  
  10.             System.out.println("StatusCode:" + code);  
  11.   
  12.             if (code == 200) {  
  13.                 serverDataString = decodeUnicode(EntityUtils.toString(response.getEntity()));  
  14. //              serverDataString = EntityUtils.toString(response.getEntity());  
  15.   
  16.                 System.out.println("接收字符串数据成功\nServerData:"+serverDataString);  
  17.             }  
  18.         } catch (Exception e) {  
  19.             // TODO Auto-generated catch block  
  20.             e.printStackTrace();  
  21.         }  
  22.   
  23.         return serverDataString;  
  24.     }  


③调用的HttpClient的get方式

[java] view plain copy

  1. public static String getBaiDuString2(String url,List<NameValuePair> params) {  
  2.         String serverDataString = null;  
  3.         HttpGet get = new HttpGet(url);  
  4.         try {get.addHeader("apikey", UrlUtils.BAIDU_API_KEY);  
  5.             HttpClient client = new DefaultHttpClient();  
  6.             HttpResponse response = client.execute(get);  
  7.             int code = response.getStatusLine().getStatusCode();  
  8.             System.out.println("StatusCode:" + code);  
  9.   
  10.             if (code == 200) {  
  11. //              serverDataString = decodeUnicode(EntityUtils.toString(response.getEntity()));  
  12.                 serverDataString = EntityUtils.toString(response.getEntity());  
  13.   
  14.                 System.out.println("接收字符串数据成功\nServerData:"+serverDataString);  
  15.             }  
  16.         } catch (Exception e) {  
  17.             // TODO Auto-generated catch block  
  18.             e.printStackTrace();  
  19.         }  
  20.   
  21.         return serverDataString;  
  22.     }  

 

谷歌提供的HttpClient的通信和HttpURLConnection网络通信的时间间隔我也做了比较,明显,HttpURLConnection的请求时间更短,所以果断使用HttpURLConnection的方式

四、java中本身就提供了对Unicode 的url进行解码的方法了:

 

[java] view plain copy

    1. System.out.println(URLDecoder.decode("\u82f9\u679c", "utf-8"));  详细介绍请查看全文:https://cnblogs.com/qianzf/
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
此为第2个包! 前言 作者和贡献者 I. 入门指引 1. 简介 2. 简明教程 II. 安装与配置 3. 安装前需要考虑的事项 4. Unix 系统下的安装 5. Mac OS X 系统下的安装 6. Windows 系统下的安装 7. PECL 扩展库安装 8. 还有问题? 9. 运行配置 III. 语言参考 10. 基本语法 11. 类型 12. 变量 13. 常量 14. 表达式 15. 运算符 16. 流程控制 17. 函数 18. 类与对象(PHP 4) 19. 类与对象(PHP 5) 20. 异常处理 21. 引用的解释 IV. 安全 22. 简介 23. 总则 24. 以 CGI 模式安装 25. 以 Apache 模块安装 26. 文件系统安全 27. 数据库安全 28. 错误报告 29. 使用 Register Globals 30. 用户提交的数据 31. 魔术引号 32. 隐藏 PHP 33. 保持更新 V. 特点 34. 用 PHP 进行 HTTP 认证 35. cookies 36. 会话 37. 处理 XForms 38. 文件上传处理 39. 使用远程文件 40. 连接处理 41. 数据库永久连接 42. 安全模式 43. PHP 的命令行模式 VI. 函数参考 I. .NET 函数 II. Advanced PHP debugger III. Alternative PHP Cache IV. Apache 特有函数 V. Array 数组函数 VI. Aspell 函数(已废弃) VII. BC math 高精度数学函数 VIII. Bzip2 压缩函数 IX. Calendar 日历函数 X. CCVS API Functions [deprecated] XI. Character Type Functions XII. Classes/Objects 类/对象函数 XIII. Classkit Functions XIV. ClibPDF Functions XV. COM 和 .Net(Windows)函数 XVI. Crack Functions XVII. Credit Mutuel CyberMUT functions XVIII. CURL, Client URL Library Functions XIX. Cybercash Payment Functions XX. Cyrus IMAP administration Functions XXI. Database (dbm-style) Abstraction Layer Functions XXII. Date/Time 日期/间函数 XXIII. DB++ Functions XXIV. dBase Functions XXV. DBM Functions [deprecated] XXVI. dbx Functions XXVII. Direct IO Functions XXVIII. Directory 目录函数 XXIX. DOM Functions XXX. DOM XML Functions XXXI. Error Handling and Logging Functions XXXII. Exif Functions XXXIII. File Alteration Monitor Functions XXXIV. filePro Functions XXXV. Filesystem 文件系统函数 XXXVI. Firebird/InterBase Functions XXXVII. Firebird/Interbase Functions (PDO_FIREBIRD) XXXVIII. Forms Data Format Functions XXXIX. FriBiDi Functions XL. FrontBase Functions XLI. FTP 函数 XLII. Function Handling Functions XLIII. Gettext XLIV. GMP Functions XLV. GNU Readline XLVI. GNU Recode Functions XLVII. HTTP 函数 XLVIII. Hyperwave API Functions XLIX. Hyperwave Functions L. IBM DB2, Cloudscape and Apache Derby Functions LI. ICAP Functions [deprecated] LII. iconv Functions LIII. ID3 Functions LIV. IIS Administration Functions LV. Image 图像函数 LVI. IMAP, POP3 and NNTP Functions LVII. Informix Functions LVIII. Ingres II Functions LIX. IRC Gateway Functions LX. KADM5 LXI. LDAP Functions LXII. libxml Functions LXIII. Lotus Notes Functions LXIV. LZF Functions LXV. Mail Functions LXVI. mailparse Functions LXVII. Math 数学函数 LXVIII. MaxDB PHP Extension LXIX. MCAL Functions LXX. Mcrypt Encryption Functions LXXI. MCVE Payment Functions LXXII. Memcache Functions LXXIII. Mhash Functions LXXIV. Microsoft SQL Server and Sybase Functions (PDO_DBLIB) LXXV. Microsoft SQL Server Functions LXXVI. Mimetype Functions LXXVII. Ming functions for Flash LXXVIII. Miscellaneous Functions LXXIX. mnoGoSearch Functions LXXX. Mohawk Software Session Handler Functions LXXXI. mSQL Functions LXXXII. Multibyte String Functions LXXXIII. muscat Functions LXXXIV. MySQL 函数 LXXXV. MySQL Functions (PDO_MYSQL) LXXXVI. MySQL Improved Extension LXXXVII. Ncurses Terminal Screen Control Functions LXXXVIII. Network Functions LXXXIX. Net_Gopher XC. NSAPI-specific Functions XCI. Object Aggregation/Composition Functions XCII. Object property and method call overloading XCIII. ODBC and DB2 functions (PDO_ODBC) XCIV. ODBC Functions (Unified) XCV. oggvorbis XCVI. OpenAL Audio Bindings XCVII. OpenSSL Functions XCVIII. Oracle 函数 XCIX. Oracle Functions (PDO_OCI) C. Oracle 函数(已废弃) CI. Output Control 输出控制函数 CII. Ovrimos SQL Functions CIII. Paradox File Access CIV. Parsekit Functions CV. PDF functions CVI. PDO Functions CVII. PHP / Java Integration CVIII. PHP bytecode Compiler CIX. PHP Options&Information CX. POSIX Functions CXI. PostgreSQL 数据库函数 CXII. PostgreSQL Functions (PDO_PGSQL) CXIII. PostgreSQL Session Save Handler CXIV. PostScript document creation CXV. Printer Functions CXVI. Process Control Functions CXVII. Program Execution Functions CXVIII. Pspell Functions CXIX. qtdom Functions CXX. Radius CXXI. Rar Functions CXXII. Perl 兼容正则表达式函数 CXXIII. POSIX 扩展正则表达式函数 CXXIV. runkit Functions CXXV. SDO Functions CXXVI. SDO Relational Data Access Service Functions CXXVII. SDO XML Data Access Service Functions CXXVIII. Secure Shell2 Functions CXXIX. Semaphore, Shared Memory and IPC Functions CXXX. SESAM Database Functions CXXXI. Session Handling Functions CXXXII. Shared Memory Functions CXXXIII. Shockwave Flash Functions CXXXIV. SimpleXML functions CXXXV. SNMP 函数 CXXXVI. SOAP Functions CXXXVII. Socket Functions CXXXVIII. SQLite Functions CXXXIX. SQLite Functions (PDO_SQLITE) CXL. Standard PHP Library (SPL) Functions CXLI. Stream Functions CXLII. String 字符串处理函数 CXLIII. Sybase Functions CXLIV. TCP Wrappers Functions CXLV. Tidy Functions CXLVI. Tokenizer Functions CXLVII. Unicode Functions CXLVIII. URL 函数 CXLIX. Variable 变量函数 CL. Verisign Payflow Pro Functions CLI. vpopmail Functions CLII. W32api 函数 CLIII. WDDX Functions CLIV. xattr Functions CLV. xdiff Functions CLVI. XML 语法解析函数 CLVII. XML-RPC 函数 CLVIII. XMLReader functions CLIX. XSL functions CLX. XSLT Functions CLXI. YAZ Functions CLXII. YP/NIS Functions CLXIII. Zip File Functions (Read Only Access) CLXIV. Zlib Compression Functions VII. PHP 和 Zend 引擎内部资料 44. PHP 扩展库编程 API 指南 45. Zend API:深入 PHP 内核 46. 扩展 PHP 3 VIII. FAQ:常见问题 47. 一般信息 48. 邮件列表 49. 获取 PHP 50. 数据库问题 51. 安装常见问题 52. 编译问题 53. 使用 PHP 54. PHP 和 HTML 55. PHP 和 COM 56. PHP 和其它语言 57. 从 PHP/FI 2 移植到 PHP 3 58. 从 PHP 3 移植到 PHP 4 59. 从 PHP 4 移植到 PHP 5 60. 杂类问题 IX. 附录 A. PHP 及其相关工程的历史 B. 从 PHP 4 移植到 PHP 5 C. 从 PHP 3 移植到 PHP 4 D. 从 PHP/FI 2 移植到 PHP 3 E. PHP 的调试 F. 配置选项 G. php.ini 配置选项 H. 扩展库分类 I. 函数别名列表 J. 保留字列表 K. 资源类型列表 L. 支持的协议/封装协议列表 M. 可用过滤器列表 N. 所支持的套接字传输器(Socket Transports)列表 O. PHP 类型比较表 P. 解析器代号列表 Q. 关于本手册 R. 开放出版许可协议 S. 函数索引
PHP,即“PHP: Hypertext Preprocessor”,是一种被广泛使用的开放源代码多用途脚本语言,尤其适用于 web 开发并可以嵌入到 HTML 中去。其语法利用了 C,Java 和 Perl,非常容易学习。该语言的主要目标是让 web 开发人员可以很快写出动态生成的网页,但 PHP 的功能远不止如此。 目录 前言 作者和贡献者 I. 入门指引 1. 简介 2. 简明教程 II. 安装与配置 3. 安装前需要考虑的事项 4. Unix 系统下的安装 5. Mac OS X 系统下的安装 6. Windows 系统下的安装 7. PECL 扩展库安装 8. 还有问题? 9. 运行配置 III. 语言参考 10. 基本语法 11. 类型 12. 变量 13. 常量 14. 表达式 15. 运算符 16. 控制结构 17. 函数 18. 类与对象(PHP 4) 19. 类与对象(PHP 5) 20. Namespaces 21. 异常处理 22. 引用的解释 IV. 安全 23. 简介 24. 总则 25. 以 CGI 模式安装 26. 以 Apache 模块安装 27. 文件系统安全 28. 数据库安全 29. 错误报告 30. 使用 Register Globals 31. 用户提交的数据 32. 魔术引号 33. 隐藏 PHP 34. 保持更新 V. 特点 35. 用 PHP 进行 HTTP 认证 36. Cookie 37. 会话 38. 处理 XForms 39. 文件上传处理 40. 使用远程文件 41. 连接处理 42. 数据库永久连接 43. 安全模式 44. PHP 的命令行模式 VI. 函数参考 I. .NET 函数 II. Apache 特有函数 III. APC 可选 PHP 缓存 IV. APD 高级 PHP 调试器 V. Array 数组函数 VI. Aspell 函数(已废弃) VII. BBCode Functions VIII. BC math 高精度数学函数 IX. BCompiler PHP 字节码编译器 X. Bzip2 压缩函数 XI. Calendar 日历函数 XII. CCVS API 函数(已废弃) XIII. Classes/Objects 类/对象函数 XIV. Classkit 函数 XV. ClibPDF Functions [deprecated] XVI. COM 和 .Net(Windows)函数 XVII. Crack Functions XVIII. Character Type Functions XIX. CURL, Client URL Library Functions XX. Cybercash Payment Functions XXI. Credit Mutuel CyberMUT functions XXII. Cyrus IMAP administration Functions XXIII. Date/Time 日期/间函数 XXIV. DB++ Functions XXV. Database (dbm-style) Abstraction Layer Functions XXVI. dBase Functions XXVII. DBM Functions [deprecated] XXVIII. dbx Functions XXIX. Direct IO Functions XXX. Directory 目录函数 XXXI. DOM Functions XXXII. DOM XML Functions XXXIII. enchant Functions XXXIV. Error Handling and Logging Functions XXXV. Exif Functions XXXVI. Expect Functions XXXVII. File Alteration Monitor Functions XXXVIII. Forms Data Format Functions XXXIX. Fileinfo Functions XL. filePro Functions XLI. Filesystem 文件系统函数 XLII. Filter Functions XLIII. Firebird/InterBase Functions XLIV. Firebird/Interbase Functions (PDO_FIREBIRD) XLV. FriBiDi Functions XLVI. FrontBase Functions XLVII. FTP 函数 XLVIII. Function Handling Functions XLIX. GeoIP Functions L. Gettext Functions LI. GMP Functions LII. gnupg 函数 LIII. Net_Gopher LIV. Haru PDF Functions LV. hash Functions LVI. HTTP 函数 LVII. Hyperwave Functions LVIII. Hyperwave API Functions LIX. i18n 函数 LX. IBM Functions (PDO_IBM) LXI. IBM DB2, Cloudscape and Apache Derby Functions LXII. iconv Functions LXIII. ID3 Functions LXIV. IIS Administration Functions LXV. Image 图像函数 LXVI. Imagick Image Library LXVII. IMAP, POP3 and NNTP Functions LXVIII. Informix Functions LXIX. Informix Functions (PDO_INFORMIX) LXX. Ingres II Functions LXXI. IRC Gateway Functions LXXII. PHP / Java Integration LXXIII. JSON 函数 LXXIV. KADM5 LXXV. LDAP Functions LXXVI. libxml Functions LXXVII. Lotus Notes Functions LXXVIII. LZF Functions LXXIX. Mail 邮件函数 LXXX. Mailparse Functions LXXXI. Math 数学函数 LXXXII. MaxDB PHP Extension LXXXIII. MCAL Functions LXXXIV. Mcrypt Encryption Functions LXXXV. MCVE (Monetra) Payment Functions LXXXVI. Memcache Functions LXXXVII. Mhash Functions LXXXVIII. Mimetype Functions LXXXIX. Ming functions for Flash XC. Miscellaneous Functions XCI. mnoGoSearch Functions XCII. Microsoft SQL Server Functions XCIII. Microsoft SQL Server and Sybase Functions (PDO_DBLIB) XCIV. Mohawk Software Session Handler Functions XCV. mSQL Functions XCVI. Multibyte String Functions XCVII. muscat Functions XCVIII. MySQL 函数 XCIX. MySQL Functions (PDO_MYSQL) C. MySQLi 扩展库 CI. Ncurses Terminal Screen Control Functions CII. Network Functions CIII. Newt Functions CIV. NSAPI-specific Functions CV. Object Aggregation/Composition Functions CVI. Object property and method call overloading CVII. Oracle 函数 CVIII. ODBC Functions (Unified) CIX. ODBC and DB2 Functions (PDO_ODBC) CX. oggvorbis CXI. OpenAL Audio Bindings CXII. OpenSSL Functions CXIII. Oracle 函数(已废弃) CXIV. Oracle Functions (PDO_OCI) CXV. Output Control 输出控制函数 CXVI. Ovrimos SQL Functions CXVII. Paradox File Access CXVIII. Parsekit Functions CXIX. Process Control Functions CXX. Perl 兼容正则表达式函数 CXXI. PDF 函数 CXXII. PDO Functions CXXIII. Phar archive stream and classes CXXIV. PHP Options&Information CXXV. POSIX Functions CXXVI. POSIX 扩展正则表达式函数 CXXVII. PostgreSQL 数据库函数 CXXVIII. PostgreSQL Functions (PDO_PGSQL) CXXIX. Printer Functions CXXX. Program Execution Functions CXXXI. PostScript document creation CXXXII. Pspell Functions CXXXIII. qtdom Functions CXXXIV. Radius CXXXV. Rar Functions CXXXVI. GNU Readline CXXXVII. GNU Recode Functions CXXXVIII. RPM Header Reading 函数 CXXXIX. runkit Functions CXL. SAM - Simple Asynchronous Messaging CXLI. Satellite CORBA client extension [deprecated] CXLII. SCA Functions CXLIII. SDO Functions CXLIV. SDO XML Data Access Service Functions CXLV. SDO Relational Data Access Service Functions CXLVI. Semaphore, Shared Memory and IPC Functions CXLVII. SESAM Database Functions CXLVIII. PostgreSQL Session Save Handler CXLIX. Session 会话处理函数 CL. Shared Memory Functions CLI. SimpleXML functions CLII. SNMP 函数 CLIII. SOAP Functions CLIV. Socket Functions CLV. Standard PHP Library (SPL) Functions CLVI. SQLite Functions CLVII. SQLite Functions (PDO_SQLITE) CLVIII. Secure Shell2 Functions CLIX. Statistics Functions CLX. Stream Functions CLXI. String 字符串处理函数 CLXII. Subversion 函数 CLXIII. Shockwave Flash Functions CLXIV. Swish Functions CLXV. Sybase Functions CLXVI. TCP Wrappers Functions CLXVII. Tidy Functions CLXVIII. Tokenizer Functions CLXIX. Unicode Functions CLXX. URL 函数 CLXXI. Variable 变量函数 CLXXII. Verisign Payflow Pro Functions CLXXIII. vpopmail Functions CLXXIV. W32api 函数 CLXXV. WDDX Functions CLXXVI. win32ps Functions CLXXVII. win32service Functions CLXXVIII. xattr Functions CLXXIX. xdiff Functions CLXXX. XML 语法解析函数 CLXXXI. XML-RPC 函数 CLXXXII. XMLReader functions CLXXXIII. XMLWriter Functions CLXXXIV. XSL functions CLXXXV. XSLT Functions CLXXXVI. YAZ Functions CLXXXVII. YP/NIS Functions CLXXXVIII. Zip File Functions CLXXXIX. Zlib Compression Functions VII. PHP at the Core: A Hacker's Guide to the Zend Engine 45. The PHP 5 build system 46. Extension structure 47. Memory management 48. Working with variables 49. Writing functions 50. Working with classes and objects 51. Working with resources 52. Working with INI settings 53. Working with streams 54. PDO Driver How-To 55. Extension FAQs 56. Zend Engine 2 API reference 57. Zend Engine 1 58. The future: PHP 6 and Zend Engine 3 VIII. FAQ:常见问题 59. 一般信息 60. 邮件列表 61. 获取 PHP 62. 数据库问题 63. 安装常见问题 64. 编译问题 65. 使用 PHP 66. PHP 和 HTML 67. PHP 和 COM 68. PHP 和其它语言 69. 从 PHP/FI 2 移植到 PHP 3 70. 从 PHP 3 移植到 PHP 4 71. 从 PHP 4 移植到 PHP 5 72. 杂类问题 IX. 附录 A. PHP 及其相关工程的历史 B. Migrating from PHP 5.1.x to PHP 5.2.x C. Migrating from PHP 5.0.x to PHP 5.1.x D. 从 PHP 4 移植到 PHP 5 E. 从 PHP 3 移植到 PHP 4 F. 从 PHP/FI 2 移植到 PHP 3 G. PHP 的调试 H. 配置选项 I. php.ini 配置选项 J. 所支持区列表 K. 扩展库分类 L. 函数别名列表 M. 保留字列表 N. 资源类型列表 O. 支持的协议/封装协议列表 P. 可用过滤器列表 Q. 所支持的套接字传输器(Socket Transports)列表 R. PHP 类型比较表 S. 解析器代号列表 T. Userland Naming Guide U. 关于本手册 V. 开放出版许可协议 W. 函数索引 X. 补充说明 X. CHM 版本 73. 关于此版本 74. Using PHP Manual CHM Edition 75. The Full Text Search 76. Specialities of this Edition 77. Integrating the PHP Manual 78. Skin development 79. CHM Edition Credits
PHP官方手册中文版 PHP 手册 Mehdi Achour Friedhelm Betz Antony Dovgal Nuno Lopes Philip Olson Georg Richter Damien Seguy Jakub Vrana 编辑 Gabor Hojtsy 目录 前言 作者和贡献者 I. 入门指引 1. 简介 2. 简明教程 II. 安装与配置 3. 安装前需要考虑的事项 4. Unix 系统下的安装 5. Mac OS X 系统下的安装 6. Windows 系统下的安装 7. PECL 扩展库安装 8. 还有问题? 9. 运行配置 III. 语言参考 10. 基本语法 11. 类型 12. 变量 13. 常量 14. 表达式 15. 运算符 16. 控制结构 17. 函数 18. 类与对象(PHP 4) 19. 类与对象(PHP 5) 20. Namespaces 21. 异常处理 22. 引用的解释 IV. 安全 23. 简介 24. 总则 25. 以 CGI 模式安装 26. 以 Apache 模块安装 27. 文件系统安全 28. 数据库安全 29. 错误报告 30. 使用 Register Globals 31. 用户提交的数据 32. 魔术引号 33. 隐藏 PHP 34. 保持更新 V. 特点 35. 用 PHP 进行 HTTP 认证 36. Cookie 37. 会话 38. 处理 XForms 39. 文件上传处理 40. 使用远程文件 41. 连接处理 42. 数据库永久连接 43. 安全模式 44. PHP 的命令行模式 VI. 函数参考 I. .NET 函数 II. Apache 特有函数 III. APC 可选 PHP 缓存 IV. APD 高级 PHP 调试器 V. Array 数组函数 VI. Aspell 函数(已废弃) VII. BBCode Functions VIII. BC math 高精度数学函数 IX. BCompiler PHP 字节码编译器 X. Bzip2 压缩函数 XI. Calendar 日历函数 XII. CCVS API 函数(已废弃) XIII. Classes/Objects 类/对象函数 XIV. Classkit 函数 XV. ClibPDF Functions [deprecated] XVI. COM 和 .Net(Windows)函数 XVII. Crack Functions XVIII. Character Type Functions XIX. CURL, Client URL Library Functions XX. Cybercash Payment Functions XXI. Credit Mutuel CyberMUT functions XXII. Cyrus IMAP administration Functions XXIII. Date/Time 日期/间函数 XXIV. DB++ Functions XXV. Database (dbm-style) Abstraction Layer Functions XXVI. dBase Functions XXVII. DBM Functions [deprecated] XXVIII. dbx Functions XXIX. Direct IO Functions XXX. Directory 目录函数 XXXI. DOM Functions XXXII. DOM XML Functions XXXIII. enchant Functions XXXIV. Error Handling and Logging Functions XXXV. Exif Functions XXXVI. Expect Functions XXXVII. File Alteration Monitor Functions XXXVIII. Forms Data Format Functions XXXIX. Fileinfo Functions XL. filePro Functions XLI. Filesystem 文件系统函数 XLII. Filter Functions XLIII. Firebird/InterBase Functions XLIV. Firebird/Interbase Functions (PDO_FIREBIRD) XLV. FriBiDi Functions XLVI. FrontBase Functions XLVII. FTP 函数 XLVIII. Function Handling Functions XLIX. GeoIP Functions L. Gettext Functions LI. GMP Functions LII. gnupg 函数 LIII. Net_Gopher LIV. Haru PDF Functions LV. hash Functions LVI. HTTP 函数 LVII. Hyperwave Functions LVIII. Hyperwave API Functions LIX. i18n 函数 LX. IBM Functions (PDO_IBM) LXI. IBM DB2, Cloudscape and Apache Derby Functions LXII. iconv Functions LXIII. ID3 Functions LXIV. IIS Administration Functions LXV. Image 图像函数 LXVI. Imagick Image Library LXVII. IMAP, POP3 and NNTP Functions LXVIII. Informix Functions LXIX. Informix Functions (PDO_INFORMIX) LXX. Ingres II Functions LXXI. IRC Gateway Functions LXXII. PHP / Java Integration LXXIII. JSON 函数 LXXIV. KADM5 LXXV. LDAP Functions LXXVI. libxml Functions LXXVII. Lotus Notes Functions LXXVIII. LZF Functions LXXIX. Mail 邮件函数 LXXX. Mailparse Functions LXXXI. Math 数学函数 LXXXII. MaxDB PHP Extension LXXXIII. MCAL Functions LXXXIV. Mcrypt Encryption Functions LXXXV. MCVE (Monetra) Payment Functions LXXXVI. Memcache Functions LXXXVII. Mhash Functions LXXXVIII. Mimetype Functions LXXXIX. Ming functions for Flash XC. Miscellaneous Functions XCI. mnoGoSearch Functions XCII. Microsoft SQL Server Functions XCIII. Microsoft SQL Server and Sybase Functions (PDO_DBLIB) XCIV. Mohawk Software Session Handler Functions XCV. mSQL Functions XCVI. Multibyte String Functions XCVII. muscat Functions XCVIII. MySQL 函数 XCIX. MySQL Functions (PDO_MYSQL) C. MySQLi 扩展库 CI. Ncurses Terminal Screen Control Functions CII. Network Functions CIII. Newt Functions CIV. NSAPI-specific Functions CV. Object Aggregation/Composition Functions CVI. Object property and method call overloading CVII. Oracle 函数 CVIII. ODBC Functions (Unified) CIX. ODBC and DB2 Functions (PDO_ODBC) CX. oggvorbis CXI. OpenAL Audio Bindings CXII. OpenSSL Functions CXIII. Oracle 函数(已废弃) CXIV. Oracle Functions (PDO_OCI) CXV. Output Control 输出控制函数 CXVI. Ovrimos SQL Functions CXVII. Paradox File Access CXVIII. Parsekit Functions CXIX. Process Control Functions CXX. Perl 兼容正则表达式函数 CXXI. PDF 函数 CXXII. PDO Functions CXXIII. Phar archive stream and classes CXXIV. PHP Options&Information CXXV. POSIX Functions CXXVI. POSIX 扩展正则表达式函数 CXXVII. PostgreSQL 数据库函数 CXXVIII. PostgreSQL Functions (PDO_PGSQL) CXXIX. Printer Functions CXXX. Program Execution Functions CXXXI. PostScript document creation CXXXII. Pspell Functions CXXXIII. qtdom Functions CXXXIV. Radius CXXXV. Rar Functions CXXXVI. GNU Readline CXXXVII. GNU Recode Functions CXXXVIII. RPM Header Reading 函数 CXXXIX. runkit Functions CXL. SAM - Simple Asynchronous Messaging CXLI. Satellite CORBA client extension [deprecated] CXLII. SCA Functions CXLIII. SDO Functions CXLIV. SDO XML Data Access Service Functions CXLV. SDO Relational Data Access Service Functions CXLVI. Semaphore, Shared Memory and IPC Functions CXLVII. SESAM Database Functions CXLVIII. PostgreSQL Session Save Handler CXLIX. Session 会话处理函数 CL. Shared Memory Functions CLI. SimpleXML functions CLII. SNMP 函数 CLIII. SOAP Functions CLIV. Socket Functions CLV. Standard PHP Library (SPL) Functions CLVI. SQLite Functions CLVII. SQLite Functions (PDO_SQLITE) CLVIII. Secure Shell2 Functions CLIX. Statistics Functions CLX. Stream Functions CLXI. String 字符串处理函数 CLXII. Subversion 函数 CLXIII. Shockwave Flash Functions CLXIV. Swish Functions CLXV. Sybase Functions CLXVI. TCP Wrappers Functions CLXVII. Tidy Functions CLXVIII. Tokenizer Functions CLXIX. Unicode Functions CLXX. URL 函数 CLXXI. Variable 变量函数 CLXXII. Verisign Payflow Pro Functions CLXXIII. vpopmail Functions CLXXIV. W32api 函数 CLXXV. WDDX Functions CLXXVI. win32ps Functions CLXXVII. win32service Functions CLXXVIII. xattr Functions CLXXIX. xdiff Functions CLXXX. XML 语法解析函数 CLXXXI. XML-RPC 函数 CLXXXII. XMLReader functions CLXXXIII. XMLWriter Functions CLXXXIV. XSL functions CLXXXV. XSLT Functions CLXXXVI. YAZ Functions CLXXXVII. YP/NIS Functions CLXXXVIII. Zip File Functions CLXXXIX. Zlib Compression Functions VII. PHP at the Core: A Hacker's Guide to the Zend Engine 45. The PHP 5 build system 46. Extension structure 47. Memory management 48. Working with variables 49. Writing functions 50. Working with classes and objects 51. Working with resources 52. Working with INI settings 53. Working with streams 54. PDO Driver How-To 55. Extension FAQs 56. Zend Engine 2 API reference 57. Zend Engine 1 58. The future: PHP 6 and Zend Engine 3 VIII. FAQ:常见问题 59. 一般信息 60. 邮件列表 61. 获取 PHP 62. 数据库问题 63. 安装常见问题 64. 编译问题 65. 使用 PHP 66. PHP 和 HTML 67. PHP 和 COM 68. PHP 和其它语言 69. 从 PHP/FI 2 移植到 PHP 3 70. 从 PHP 3 移植到 PHP 4 71. 从 PHP 4 移植到 PHP 5 72. 杂类问题 IX. 附录 A. PHP 及其相关工程的历史 B. Migrating from PHP 5.1.x to PHP 5.2.x C. Migrating from PHP 5.0.x to PHP 5.1.x D. 从 PHP 4 移植到 PHP 5 E. 从 PHP 3 移植到 PHP 4 F. 从 PHP/FI 2 移植到 PHP 3 G. PHP 的调试 H. 配置选项 I. php.ini 配置选项 J. 所支持区列表 K. 扩展库分类 L. 函数别名列表 M. 保留字列表 N. 资源类型列表 O. 支持的协议/封装协议列表 P. 可用过滤器列表 Q. 所支持的套接字传输器(Socket Transports)列表 R. PHP 类型比较表 S. 解析器代号列表 T. Userland Naming Guide U. 关于本手册 V. 开放出版许可协议 W. 函数索引 X. 补充说明 X. CHM 版本 73. 关于此版本 74. Using PHP Manual CHM Edition 75. The Full Text Search 76. Specialities of this Edition 77. Integrating the PHP Manual 78. Skin development 79. CHM Edition Credits
太大分了两个包,请下载完整!! 前言 作者和贡献者 I. 入门指引 1. 简介 2. 简明教程 II. 安装与配置 3. 安装前需要考虑的事项 4. Unix 系统下的安装 5. Mac OS X 系统下的安装 6. Windows 系统下的安装 7. PECL 扩展库安装 8. 还有问题? 9. 运行配置 III. 语言参考 10. 基本语法 11. 类型 12. 变量 13. 常量 14. 表达式 15. 运算符 16. 流程控制 17. 函数 18. 类与对象(PHP 4) 19. 类与对象(PHP 5) 20. 异常处理 21. 引用的解释 IV. 安全 22. 简介 23. 总则 24. 以 CGI 模式安装 25. 以 Apache 模块安装 26. 文件系统安全 27. 数据库安全 28. 错误报告 29. 使用 Register Globals 30. 用户提交的数据 31. 魔术引号 32. 隐藏 PHP 33. 保持更新 V. 特点 34. 用 PHP 进行 HTTP 认证 35. cookies 36. 会话 37. 处理 XForms 38. 文件上传处理 39. 使用远程文件 40. 连接处理 41. 数据库永久连接 42. 安全模式 43. PHP 的命令行模式 VI. 函数参考 I. .NET 函数 II. Advanced PHP debugger III. Alternative PHP Cache IV. Apache 特有函数 V. Array 数组函数 VI. Aspell 函数(已废弃) VII. BC math 高精度数学函数 VIII. Bzip2 压缩函数 IX. Calendar 日历函数 X. CCVS API Functions [deprecated] XI. Character Type Functions XII. Classes/Objects 类/对象函数 XIII. Classkit Functions XIV. ClibPDF Functions XV. COM 和 .Net(Windows)函数 XVI. Crack Functions XVII. Credit Mutuel CyberMUT functions XVIII. CURL, Client URL Library Functions XIX. Cybercash Payment Functions XX. Cyrus IMAP administration Functions XXI. Database (dbm-style) Abstraction Layer Functions XXII. Date/Time 日期/间函数 XXIII. DB++ Functions XXIV. dBase Functions XXV. DBM Functions [deprecated] XXVI. dbx Functions XXVII. Direct IO Functions XXVIII. Directory 目录函数 XXIX. DOM Functions XXX. DOM XML Functions XXXI. Error Handling and Logging Functions XXXII. Exif Functions XXXIII. File Alteration Monitor Functions XXXIV. filePro Functions XXXV. Filesystem 文件系统函数 XXXVI. Firebird/InterBase Functions XXXVII. Firebird/Interbase Functions (PDO_FIREBIRD) XXXVIII. Forms Data Format Functions XXXIX. FriBiDi Functions XL. FrontBase Functions XLI. FTP 函数 XLII. Function Handling Functions XLIII. Gettext XLIV. GMP Functions XLV. GNU Readline XLVI. GNU Recode Functions XLVII. HTTP 函数 XLVIII. Hyperwave API Functions XLIX. Hyperwave Functions L. IBM DB2, Cloudscape and Apache Derby Functions LI. ICAP Functions [deprecated] LII. iconv Functions LIII. ID3 Functions LIV. IIS Administration Functions LV. Image 图像函数 LVI. IMAP, POP3 and NNTP Functions LVII. Informix Functions LVIII. Ingres II Functions LIX. IRC Gateway Functions LX. KADM5 LXI. LDAP Functions LXII. libxml Functions LXIII. Lotus Notes Functions LXIV. LZF Functions LXV. Mail Functions LXVI. mailparse Functions LXVII. Math 数学函数 LXVIII. MaxDB PHP Extension LXIX. MCAL Functions LXX. Mcrypt Encryption Functions LXXI. MCVE Payment Functions LXXII. Memcache Functions LXXIII. Mhash Functions LXXIV. Microsoft SQL Server and Sybase Functions (PDO_DBLIB) LXXV. Microsoft SQL Server Functions LXXVI. Mimetype Functions LXXVII. Ming functions for Flash LXXVIII. Miscellaneous Functions LXXIX. mnoGoSearch Functions LXXX. Mohawk Software Session Handler Functions LXXXI. mSQL Functions LXXXII. Multibyte String Functions LXXXIII. muscat Functions LXXXIV. MySQL 函数 LXXXV. MySQL Functions (PDO_MYSQL) LXXXVI. MySQL Improved Extension LXXXVII. Ncurses Terminal Screen Control Functions LXXXVIII. Network Functions LXXXIX. Net_Gopher XC. NSAPI-specific Functions XCI. Object Aggregation/Composition Functions XCII. Object property and method call overloading XCIII. ODBC and DB2 functions (PDO_ODBC) XCIV. ODBC Functions (Unified) XCV. oggvorbis XCVI. OpenAL Audio Bindings XCVII. OpenSSL Functions XCVIII. Oracle 函数 XCIX. Oracle Functions (PDO_OCI) C. Oracle 函数(已废弃) CI. Output Control 输出控制函数 CII. Ovrimos SQL Functions CIII. Paradox File Access CIV. Parsekit Functions CV. PDF functions CVI. PDO Functions CVII. PHP / Java Integration CVIII. PHP bytecode Compiler CIX. PHP Options&Information CX. POSIX Functions CXI. PostgreSQL 数据库函数 CXII. PostgreSQL Functions (PDO_PGSQL) CXIII. PostgreSQL Session Save Handler CXIV. PostScript document creation CXV. Printer Functions CXVI. Process Control Functions CXVII. Program Execution Functions CXVIII. Pspell Functions CXIX. qtdom Functions CXX. Radius CXXI. Rar Functions CXXII. Perl 兼容正则表达式函数 CXXIII. POSIX 扩展正则表达式函数 CXXIV. runkit Functions CXXV. SDO Functions CXXVI. SDO Relational Data Access Service Functions CXXVII. SDO XML Data Access Service Functions CXXVIII. Secure Shell2 Functions CXXIX. Semaphore, Shared Memory and IPC Functions CXXX. SESAM Database Functions CXXXI. Session Handling Functions CXXXII. Shared Memory Functions CXXXIII. Shockwave Flash Functions CXXXIV. SimpleXML functions CXXXV. SNMP 函数 CXXXVI. SOAP Functions CXXXVII. Socket Functions CXXXVIII. SQLite Functions CXXXIX. SQLite Functions (PDO_SQLITE) CXL. Standard PHP Library (SPL) Functions CXLI. Stream Functions CXLII. String 字符串处理函数 CXLIII. Sybase Functions CXLIV. TCP Wrappers Functions CXLV. Tidy Functions CXLVI. Tokenizer Functions CXLVII. Unicode Functions CXLVIII. URL 函数 CXLIX. Variable 变量函数 CL. Verisign Payflow Pro Functions CLI. vpopmail Functions CLII. W32api 函数 CLIII. WDDX Functions CLIV. xattr Functions CLV. xdiff Functions CLVI. XML 语法解析函数 CLVII. XML-RPC 函数 CLVIII. XMLReader functions CLIX. XSL functions CLX. XSLT Functions CLXI. YAZ Functions CLXII. YP/NIS Functions CLXIII. Zip File Functions (Read Only Access) CLXIV. Zlib Compression Functions VII. PHP 和 Zend 引擎内部资料 44. PHP 扩展库编程 API 指南 45. Zend API:深入 PHP 内核 46. 扩展 PHP 3 VIII. FAQ:常见问题 47. 一般信息 48. 邮件列表 49. 获取 PHP 50. 数据库问题 51. 安装常见问题 52. 编译问题 53. 使用 PHP 54. PHP 和 HTML 55. PHP 和 COM 56. PHP 和其它语言 57. 从 PHP/FI 2 移植到 PHP 3 58. 从 PHP 3 移植到 PHP 4 59. 从 PHP 4 移植到 PHP 5 60. 杂类问题 IX. 附录 A. PHP 及其相关工程的历史 B. 从 PHP 4 移植到 PHP 5 C. 从 PHP 3 移植到 PHP 4 D. 从 PHP/FI 2 移植到 PHP 3 E. PHP 的调试 F. 配置选项 G. php.ini 配置选项 H. 扩展库分类 I. 函数别名列表 J. 保留字列表 K. 资源类型列表 L. 支持的协议/封装协议列表 M. 可用过滤器列表 N. 所支持的套接字传输器(Socket Transports)列表 O. PHP 类型比较表 P. 解析器代号列表 Q. 关于本手册 R. 开放出版许可协议 S. 函数索引
### 回答1: 下面是使用 org.apache.http.client.methods 发送 POST 请求并返回字符串的示例代码: ```java import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.HttpPost; import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; import org.apache.http.util.EntityUtils; public class Main { public static void main(String[] args) throws Exception { // 创建 HttpClient CloseableHttpClient httpClient = HttpClients.createDefault(); // 创建 HttpPost HttpPost httpPost = new HttpPost("http://example.com"); // 设置请求体 StringEntity requestEntity = new StringEntity("request body"); httpPost.setEntity(requestEntity); // 发送请求 CloseableHttpResponse response = httpClient.execute(httpPost); // 获取响应体 String responseBody = Entity.toString(response.getEntity()); // 打印响应体 System.out.println(responseBody); // 关闭 HttpClient httpClient.close(); } } ``` 注意:上面的示例代码中将请求发送到了 "http://example.com",请替换为实际的接口地址。 ### 回答2: org.apache.http.client.methods 是 Apache HttpClient 库中的一个类,用于发送 HTTP 请求。具体来说,在这个类中,我们可以使用HttpPost 类来发送 POST 请求。 Http请求是一种客户端与服务器之间的通信方式,其中POST 请求常用于向服务器提交数据。同,POST 请求可以用于获取服务器的响应结果。 要发送 POST 请求并返回一个字符串,我们可以按照以下步骤进行: 1. 创建一个 DefaultHttpClient 对象,该对象是 HttpClient 类的实例,并用它来执行请求。 2. 创建一个HttpPost 对象,用于定义要发送的请求方式和 URL。 3. 创建一个名为NameValuePair 的列表,用于存储要发送的POST请求的参数。 4. 将参数列表添加到HttpPost 对象中。 5. 使用 DefaultHttpClient 对象执行 HttpPost 请求,将返回的结果保存在 HttpResponse 对象中。 6. 从 HttpResponse 对象中获取返回的结果,并将其转换为字符串。 下面是一个示例代码,演示如何使用 org.apache.http.client.methods 来发送 POST 请求并返回字符串: ```java import org.apache.http.client.methods.HttpPost; import org.apache.http.impl.client.DefaultHttpClient; import org.apache.http.message.BasicNameValuePair; import org.apache.http.NameValuePair; import org.apache.http.HttpResponse; import org.apache.http.util.EntityUtils; import java.util.ArrayList; import java.util.List; public class PostRequestExample { public static void main(String[] args) { String url = "http://example.com"; // 替换为要发送请求的 URL DefaultHttpClient httpClient = new DefaultHttpClient(); HttpPost httpPost = new HttpPost(url); List<NameValuePair> params = new ArrayList<>(); params.add(new BasicNameValuePair("param1", "value1")); // 添加 POST 请求的参数 try { httpPost.setEntity(new UrlEncodedFormEntity(params, "UTF-8")); HttpResponse response = httpClient.execute(httpPost); // 获取返回的结果并转换为字符串 String responseString = EntityUtils.toString(response.getEntity(), "UTF-8"); System.out.println(responseString); // 输出返回的字符串结果 } catch (Exception e) { e.printStackTrace(); } } } ``` 以上代码演示了如何使用 org.apache.http.client.methods 发送 POST 请求并返回字符串结果。我们首先创建了一个 DefaultHttpClient 对象,然后实例化了 HttpPost 对象,并设置了要发送请求的 URL。接着,我们创建了一个参数列表,用于存储 POST 请求的参数,并将其添加到 HttpPost 对象中。最后,我们执行 HttpPost 请求,将返回结果保存在 HttpResponse 对象中,并将结果转换为字符串。 请注意,上述示例中的方法在 Apache HttpClient 4.x 版本中已经被弃用,推荐使用 HttpClientBuilder 来创建 HttpClient 对象。但是,上述示例代码仍然可以在 Apache HttpClient 4.x 版本中使用。 ### 回答3: org.apache.http.client.methods是Apache HttpClient库中的一个类,用于创建HTTP请求方法的对象。要发送POST请求并返回一个字符串,可以按照以下步骤进行: 1. 首先,创建org.apache.http.impl.client.CloseableHttpClient对象,这是Apache HttpClient库中的一个实现了HttpClient接口的类。可以使用HttpClients.createDefault()方法获取默认的CloseableHttpClient实例。 2. 接下来,创建org.apache.http.client.methods.HttpPost对象,表示POST请求方法。在构造方法中传入请求的URL地址。 3. 如果有需要,可以设置POST请求的请求头信息。可以通过调用HttpPost对象的setHeader(String name, String value)方法来设置请求头参数。 4. 如果需要发送请求体数据,可以创建org.apache.http.entity.StringEntity对象,并将传入的字符串作为构造方法参数。然后,可以通过调用HttpPost对象的setEntity(HttpEntity entity)方法将请求体设置到POST请求中。 5. 调用CloseableHttpClient对象的execute(HttpUriRequest request)方法,将HttpPost对象作为参数,执行请求。该方法将返回org.apache.http.client.methods.CloseableHttpResponse对象。 6. 最后,从CloseableHttpResponse对象中获取响应结果。可以通过调用CloseableHttpResponse对象的getEntity()方法获取响应体。如果需要将响应体转换成字符串,可以使用org.apache.http.util.EntityUtils类的toString(HttpEntity entity, Charset defaultCharset)静态方法。 以上是使用org.apache.http.client.methods发送POST请求并返回字符串的基本步骤。根据实际需求,可能还需要进行异常处理、设置连接超间、关闭连接等操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值