Haben Sie Ideen, auf https url guys zuzugreifen? Ich möchte es wirklich vervollständigen. Wenn ich versuche, eine Verbindung zum Server wie folgt herzustellen, sendet der Server 403 Fehler. Ich habe .cert und .keystore auch erstellt. Vielen Dank für Ihre Idee.Wie kann ich mit @requestMapping auf das https-Protokoll von JS zum Spring-Boot zugreifen?
Mein Server-Code (Controlling)
@Log4j
@Controller
@RequestMapping("/v0.1/login")
public class LoginSessionAPI {
@Autowired
UserService service;
@RequestMapping(method = RequestMethod.POST)
public String verify(@RequestParam("id") String id, @RequestParam("pw") String pw) {
String auth = service.excute(id, pw);
return auth;
}
}
-Client-Site (JavaScript)
function getService(userId, userPw, ipPort){
var protocol = "https://"
var HOST = protocol + ipPort + "/v0.1/login";
console.log("HOST : "+HOST);
var loginAuth;
var loginJson = new Object();
loginJson.id = userId;
loginJson.pw = userPw;
var loginRequest = new XMLHttpRequest();
loginRequest.onreadystatechange = function(){
// process the server response
console.log("status : "+loginRequest.status);
if (loginRequest.status == 200) {
console.log("object : "+loginRequest.responseText);
if(loginRequest.responseText === ""){
}else{
var responseLoginJson = eval("("+loginRequest.responseText+")");
loginAuth = responseLoginJson.loginAuth;
}
} else {
console.log("failed");
}
};
loginRequest.open("POST", HOST, false);
loginRequest.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
console.log(loginJson);
loginRequest.send(JSON.stringify(loginJson));
}
And then,
I call getService(id, pw, ipPort) function.
habe ich SSL-Zertifizierung.
application.properties
server.port=8443
server.ssl.key-store=keystore.jks
server.ssl.key-store-password=123456
server.ssl.key-password=123456
server.ssl.key-alias=tomcat
server.ssl.trust-store=cacerts.jks
server.ssl.trust-store-password=123456
server.ssl.protocol=TLS
server.ssl.ciphers=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_RC4_128_SHA,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_25\u200C\u200B6_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA,SSL_RSA_WITH_RC4_128_SHA
Protokolle von Browser anhängen – PawelN
{ "Zeitstempel": 1478303640819, "status": 403, "error": "Verboten", "message": "Expected CSRF-Token nicht gefunden. Ist Ihre Sitzung abgelaufen? "," path ":"/action/register "}" – Jason
Ich habe diesen Header angehängt, aber habe immer noch Probleme. var header = $ ("meta [name = '_ csrf_header']") .attr ("content"); var token = $ ("meta [name = '_ csrf']"). attr ("Inhalt"); loginRequest.setRequestHeader (header, token); – Jason