package com.gzt.security.browser.controller;
import org.apache.commons.codec.binary.Base64;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import sun.misc.BASE64Encoder;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
@RestController
public class TestController {
/**
* BASE64編碼
*/
public String encryptBASE64(String username,String password) {
byte[] key = (username+":"+password).getBytes();
return new String(Base64.encodeBase64(key));
}
@GetMapping("/demo")
public void test(){
String account = "username";
String passowrd = "pwd";
String authorization = "Basic "+(encryptBASE64(account,passowrd));
String http = "http://ip:port/hello";
/** 網絡的url地址 */
URL url = null;
HttpURLConnection httpUrlConnection = null ;
InputStream inputStream = null;
BufferedReader in = null;
String str;
try {
url = new URL(http);
httpUrlConnection = (HttpURLConnection) url.openConnection();
httpUrlConnection.setConnectTimeout(1000);
httpUrlConnection.setReadTimeout(1000);
System.out.println(authorization);
httpUrlConnection.setRequestProperty("authorization","Basic "+(encryptBASE64(account,passowrd)));
inputStream = httpUrlConnection.getInputStream();
in = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"));
while ((str = in.readLine()) != null) {
System.out.println("》》》》:"+str);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}