Hallo,
ich habe eine kleine Anwendung geschrieben, die über eine URL von einer anderen Anwendung aufgerufen werden soll. Beide Anwendungen laufen auf unterschiedlichen Domainen. Mein Java-Controller sieht so aus:
und so sieht mein Ajax-Aufruf aus:
Ich bin schon soweit, dass ich herausgefunden habe, dass der 403 bei contentType: "application/json" kommt. Wenn ich diesen aber weglasse, bekomme ich ein 415 zurück, da mein Request-Header den Content-Type "application/x-www-form-urlencoded; charset=UTF-8" hat.
Könnt ihr mir hier weiterhelfen?
Danke und Gruß
Patrick
ich habe eine kleine Anwendung geschrieben, die über eine URL von einer anderen Anwendung aufgerufen werden soll. Beide Anwendungen laufen auf unterschiedlichen Domainen. Mein Java-Controller sieht so aus:
Java:
@RequestMapping(value = "/invoice_for_checking" ,method = RequestMethod.POST)
public ResponseEntity invoice_for_checking(@RequestBody Email emaildata)
{
HttpHeaders headers = new HttpHeaders();
headers.add("Content-Type", "application/json);
headers.add("Access-Control-Allow-Origin", "*");
headers.add("Access-Control-Allow-Methods", "*");
headers.add("Access-Control-Allow-Headers", "*");
Boolean result = es.send_invoice_for_checking(emaildata);
if (result == true)
{
return ResponseEntity.ok()
.headers(headers)
.body("Success");
}
else
{
return ResponseEntity.badRequest()
.headers(headers)
.body("Fehler bei der Mailversendung");
}
}
und so sieht mein Ajax-Aufruf aus:
Javascript:
var data = '{'+
'"sender":"buchhaltung@domain.net",'+
'"sender_firstname":"Jana",'+
'"recipient":"user@domain.net",'+
'"recipient_firstname":"Patrick",'+
'"subject":"Rechnung '+rechnungsnummer+' liegt zur Prüfung bereit",'+
'"invoice_contract":"Ein Vertrag",'+
'"invoice_bill_number":"'+rechnungsnummer+'",'+
'"invoice_amount":"'+rechnungsbetrag+'",'+
'"invoice_begin":"'+rechnungszeitraum_begin+'",'+
'"invoice_end":"'+rechnungszeitraum_end+'",'+
'"pathToAttachment":"'+pdf+'",'+
'"invoice_crm_link":"https://crm.domain/main.aspx?etc=10019&id='+pageid+'&newWindow=true&pagetype=entityrecord"'+
'}';
$.ajax({
type: "POST",
url: "http://localhost:7777/email/invoice_for_checking",
dataType: 'json',
contentType: "application/json",
data: data,
success: function (data, textStatus, XMLHttpRequest) {
console.log(data);
}
});
Ich bin schon soweit, dass ich herausgefunden habe, dass der 403 bei contentType: "application/json" kommt. Wenn ich diesen aber weglasse, bekomme ich ein 415 zurück, da mein Request-Header den Content-Type "application/x-www-form-urlencoded; charset=UTF-8" hat.
Könnt ihr mir hier weiterhelfen?
Danke und Gruß
Patrick
Zuletzt bearbeitet: