2013-09-13 4 views
0

Я использую Phil Sturgeons RESTFUL библиотеки для codeigniter. Но у меня проблема с методом POST.API rest codeigniter POST метод return null

$ this-> post ('name');

Код выше всегда возвращает null, когда я пытаюсь поймать значение.

вот мой запрос: Request Url: http://localhost/api_rest/login Request Method: POST Status Code: 400 Params: { "email": "[email protected]", "password": "balbala" }:

function login_post() 
{ 
if(!$this->post('email') || !$this->post('password')){ 
     $this->response(array('error' => 'Email and Password leave blank'),400); 
    } 

yups это код возврата статуса: 400 because $this->post('email') or $this->post('password') абсолютно вернуть false.

и, возможно, вы должны знать свою ошибку:

<div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;"> 

<h4>A PHP Error was encountered</h4> 

<p>Severity: Warning</p> 
<p>Message: simplexml_load_string(): Entity: line 1: parser error : Start tag expected, '&lt;' not found</p> 
<p>Filename: libraries/Format.php</p> 
<p>Line Number: 230</p> 

</div><div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;"> 

<h4>A PHP Error was encountered</h4> 

<p>Severity: Warning</p> 
<p>Message: simplexml_load_string(): email=sahal%40seratuscompany.com&amp;password=123456</p> 
<p>Filename: libraries/Format.php</p> 
<p>Line Number: 230</p> 

</div><div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;"> 

<h4>A PHP Error was encountered</h4> 

<p>Severity: Warning</p> 
<p>Message: simplexml_load_string(): ^</p> 
<p>Filename: libraries/Format.php</p> 
<p>Line Number: 230</p> 

</div>{"error":"Email and Password leave blank"} 

нибудь есть представление об этом материале.?

+0

Вы пробовали демпинг $ _POST, чтобы увидеть, если запрос принимается должным образом на вашем конце? – JohnP

+0

oh ,, oke я попробую .. , но я немного уверен, что он тоже возвращает null. –

+1

Попробуйте var_dump ($ _ POST), а также var_dump ($ this-> post()). Если они оба возвращают нули, это означает, что ваш скрипт не получает переменные POST. – JohnP

ответ

0

добавить

} еще {

$ this-> ответ (_ $ SERVER); }

или

} еще {$ this-> ответ (_ $ POST); }

чтобы видеть, что отправляется методу.

+0

Я думаю, что у него такая же проблема, как у меня http://stackoverflow.com/questions/17490174/this-post-codeigniter-dont- work-with-rest-api? rq = 1 $ this-> response (_ $ SERVER); return, потому что он не распознает PHP. он попробовал $ this-> response ($ _ SERVER); но он не дает ответа. –

-1

сделать так

 $postdata = file_get_contents("php://input"); 
     header('Content-type: application/json'); 
     $obj = json_decode($postdata,true); 
     $email=$obj['email']; 
     $password=$obj['password']; 
     then do the rest