Ich bin sehr neu in AngularJS und ich habe die Aufgabe, es zu verwenden, um eine Headless Drupal-Schnittstelle zu erstellen.Headless Drupal Erstellen von Inhalten über RESTful-Dienste
Ich habe ein Problem treffen, wo ich die folgenden Fehler feststellen:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>400 Bad Request</title>
</head><body>
<h1>Bad Request</h1>
<p>Your browser sent a request that this server could not understand.<br />
The number of request header fields exceeds this server's limit.</p>
<hr>
<address>Apache/2.4.7 (Ubuntu) Server at 127.0.0.1 Port 80</address>
</body></html>
Hier ist der Code Ich verwende:
//test function
$scope.test = function() {
console.log("NODE Test function responding!");
var user_session = $cookieStore.get('user_session');
console.log(user_session);
var nodeObj = {
"title": "Node Test",
"body": "Node body contents test#2",
"type": "page"
};
var nodeObj = {
"type": "page",
"title": "New Page",
"language": "und"
};
var res = $http.post("http://mydrupal-services-site/angularjs-headless/api/v1/node", nodeObj, {
"headers": user_session
});
res.success(function(data, status, headers, config) {
$scope.message = data;
console.log("Success: ");
console.log(data);
});
res.error(function(data, status, headers, config) {
console.error(data);
});
}
Nach der Suche, fand ich einen Beitrag, die LimitRequestFieldSize 16384
vorgeschlagen Hinzufügen zu meinem VirtualHost würde das Problem lösen, aber es tat es nicht.
UPDATE
Meine USER_SESSION Variable enthält die folgenden (die nur 144 Zeichen lang ist):
Cookie:SESSb22b2ff3837c37411e0b1da3fbd77b0c=_bwpgljhXPwcA_ZfmZpL2IrnIvo25PX_APYdzrIcM08 X-CSRF-Token:GwXcAwctxVcOi_FvI-Mfm6HYQaLoWAFnvkQQ-Nnzbhs
Bitte überprüfen Sie meine Antwort, nur eine Frage an Sie: Warum ist Ihre user_session Cookie länger als 6028 Zeichen ?! – lin
Hallo @lin, meine user_session Daten sind nur 144 Zeichen lang. Ich habe es als ein Update auf die Frage – sisko
aufgenommen Könnten Sie die vollständige Anfrage Header per HTTP-Anfrage hinzufügen? (rohe Ausgabe des Netzwerk-Tabs in der Konsole) – lin