Anwendung POST submit geht nicht in den Feder-REST-Controller. Stattdessen wird die Anfrage auf die Seite "Zugriff verweigert" entsprechend der "secure config" -Datei weitergeleitet. System erlaubt die Anfrage von allen externen Parteien über Feder Sicherheitskonfiguration.
aber immer auf den Zugriff umgeleitet Anfrage Seite verweigertWarum immer auf die Seite "Zugriff verweigert" weitergeleitet?
.exceptionHandling().accessDeniedPage("/accessDenied");
angular2 Service
..........
.....
addHotel(hotelDTO){
let headers = new Headers({ 'Content-Type': 'application/json' });
let options = new RequestOptions({ headers: headers });
this._route_url = this._url+"/restHotelRegistration"
var result = this._http.post(this._route_url, JSON.stringify(hotelDTO),options)
.map(res => res.json());
return result;
}
......
...
REST-Controller
@RequestMapping(value = "restHotelRegistration", method = RequestMethod.POST,produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<Void> restSaveHotel(@RequestBody HotelDTO hotelDTO) {
System.out.println(">>>>> Fetching User with HotelName " + hotelDTO.getHotelName());
System.out.println(">>>>> Fetching User with Phone " + hotelDTO.getPhone());
.......
........
}
Security Config Klasse
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/**").permitAll()
.and()
.formLogin()
.loginPage("/loginPage")
.usernameParameter("username").passwordParameter("password")
.successForwardUrl("/successLogin")
.defaultSuccessUrl("/successLogin",true).permitAll()
.loginProcessingUrl("/successLogin")
.failureUrl("/invalidLogin")
.and().csrf()
.ignoringAntMatchers("/login", "/logout")
.and().exceptionHandling().accessDeniedPage("/accessDenied")
.and()
.logout()
.logoutUrl("/logout")
.logoutSuccessUrl("/logout").permitAll();
}
==== Request und Response ====
========================= ========================================= JSON-Objekt
Haben Sie versucht, den csrf-Filter zu deaktivieren, auch nur um zu testen, ob es richtig funktioniert? – jlumietu
Sie Recht @jlumietu. Nach dem Deaktivieren des CSRF-Filters funktioniert es. – Sadun89