HTTP基本认证(Basic Authentication)的java调用示例
2017-12-01 11:05
615 查看
一、问题引入
大家在登录网站的时候,大部分时候是通过一个表单提交登录信息。
但是有时候浏览器会弹出一个登录验证的对话框,如下图,这就是使用HTTP基本认证
这种认证的相关介绍在另一篇博客中有介绍,这里不做解释:
参见
http://blog.csdn.net/qq_15783243/article/details/78586699
二、方法示例:
在开发中如果我们遇到这种需要验证的接口应该怎么调用呢?
这里给出一个Basic Authentication 接口调用的工具示例:
至此对基本认证(Basic Authentication)的完整过程就基本实现了,希望对大家有所帮助,本人水平有限,若有不足之处还请批评指正!
大家在登录网站的时候,大部分时候是通过一个表单提交登录信息。
但是有时候浏览器会弹出一个登录验证的对话框,如下图,这就是使用HTTP基本认证
这种认证的相关介绍在另一篇博客中有介绍,这里不做解释:
参见
http://blog.csdn.net/qq_15783243/article/details/78586699
二、方法示例:
在开发中如果我们遇到这种需要验证的接口应该怎么调用呢?
这里给出一个Basic Authentication 接口调用的工具示例:
package com.credithc.rc.kg.utils; import java.io.BufferedReader; import java.io.IOException; import java.io.PrintWriter; import org.apache.commons.codec.binary.Base64; import java.io.*; import java.net.URL; import java.net.URLConnection; public class GetAPIResultUtil { /** * * * @param url * @param param * @return */ public static String getAPIResult(String url, String param) { PrintWriter out = null; BufferedReader in = null; String result = ""; try { URL realUrl = new URL(url); URLConnection conn = realUrl.openConnection(); //conn.setConnectTimeout(5000); String plainCredentials = "lucy:12345"; String base64Credentials = new String(Base64.encodeBase64(plainCredentials.getBytes())); conn.setRequestProperty("Authorization", "Basic " + base64Credentials); conn.setRequestProperty("accept", "*/*"); conn.setRequestProperty("Content-type", "application/json"); conn.setRequestProperty("connection", "Keep-Alive"); conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)"); conn.setDoOutput(true); conn.setDoInput(true); out = new PrintWriter(conn.getOutputStream()); out.print(param); out.flush(); 4000 in = new BufferedReader(new InputStreamReader(conn.getInputStream())); String line; while ((line = in.readLine()) != null) { result += line; } } catch (Exception e) { e.printStackTrace(); } finally { try { out.close(); in.close(); } catch (IOException ex) { ex.printStackTrace(); } } return result; } }
至此对基本认证(Basic Authentication)的完整过程就基本实现了,希望对大家有所帮助,本人水平有限,若有不足之处还请批评指正!
相关文章推荐
- HTTP基本认证(Basic Authentication)的JAVA示例
- HTTP基本认证(Basic Authentication)的JAVA示例
- HTTP基本认证(Basic Authentication)的JAVA示例
- HTTP基本认证(Basic Authentication)的JAVA示例
- HTTP基本认证(Basic Authentication)的JAVA示例
- HTTP基本认证(Basic Authentication)的JAVA示例
- HTTP基本认证(Basic Authentication)的JAVA示例
- HTTP基本认证(Basic Authentication)的JAVA示例
- HTTP基本认证(Basic Authentication)的JAVA示例
- HTTPClient调用https请求,通过基本认证用户名密码(Basic Auth)
- 短信http接口的java代码调用示例
- java添加HTTP基本认证(Basic Authentication)
- HTTP基本认证(Basic Authentication)的JAVA实例代码
- java调用HttpPost,HttpGet调用示例
- HTTP基本认证(Basic Authentication)的JAVA演示样例
- 【转】在ASP.NET中调用基于HTTP基本认证的WebService接口
- HTTP基本认证(Basic Authentication)的JAVA实例代码
- JAVA连接ORACLE的基本步骤,写在这里做备忘 (参考了http://student.csdn.net/space.php?uid=412909&do=blog&id=33102)
- java 通过httpclient调用https 的webapi
- java httpclient作为客户端调用webservice