Ich versuche, eine Sammlung in meiner Datenbank zu speichern, die RESTfully Backbone.js mit dem SLIM php Rahmenwerk verwendet, das auf meinem Server läuft.
Hier ist meine Sammlung:
%Vor%Hier ist meine SLIM Route:
%Vor% Wenn ich create()
für meine Sammlung anrufe, erhalte ich eine Verwarnungswarnung in der Antwort des Servers:
Automatically populating $HTTP_RAW_POST_DATA is deprecated and will be removed in a future version. To avoid this warning set 'always_populate_raw_post_data' to '-1' in php.ini and use the php://input stream instead. in Unknown on line 0
Ich habe diese Anweisungen befolgt und folgendes getan:
Ich habe dies vor meinen Routen hinzugefügt:
%Vor%und von meiner POST-Route aus habe ich versucht, die Anfrage-Payload wie folgt zu empfangen:
%Vor%Nach dieser Änderung an meinem Code ist die Antwort, die ich erhalte, gleich geblieben ...
BEARBEITEN
Der Fehler tritt auch bei einem leeren Callback auf ....
%Vor% Es gibt einen Fehler in PHP 5.6. Der Standardwert von always_populate_raw_post_data
ist 0
. Dies führt dazu, dass PHP Warnungen ausgibt, auch wenn Ihr Code $HTTP_RAW_POST_DATA
nicht verwendet. Einige behaupten, dass dies passiert, wenn header()
aufgerufen wird, nachdem bereits Text ausgegeben wurde. Der Versuch, ini_set()
zu verwenden, hilft nicht.
Sie müssen stattdessen die Konfiguration direkt in der php.ini ändern.
%Vor%Verwandte Diskussion in PHP-Interna
Grundsätzlich können Sie Automatically populating $HTTP_RAW_POST_DATA is deprecated...
error auf verschiedene Arten auflösen,
Durch das Ändern von always_populate_raw_post_data in die -1 php.ini-Datei wird das Problem behoben. Es wird jedoch das Problem, wo Sie nicht genügend Kontrolle über die php.ini-Datei haben. Sie können an Shared Hosting denken.
Ändern Sie die .htaccess-Datei in Ihr Anwendungsverzeichnis. Dies gibt nur eine isolierte Kontrolle über Ihre Anwendung. Es wird weder APACHE noch PHP anderer Anwendungsausführung beeinflussen.
<IfModule mod_php5.c>
php_value always_populate_raw_post_data -1
</IfModule>
Und ich würde den zweiten Ansatz empfehlen. Da Sie Ihre Anwendung sowohl im Shared Hosting als auch im dedizierten Server Hosting platzieren können.
Tags und Links php backbone.js xmlhttprequest slim postdata