2012-11-19 49 views
1

我正在倾斜laravel。我正在致力于Rest API。我做了controller使用curl发布如下无法在laravel中使用卷曲

public function post_index() 
{ 

     $cat = Input::json(); 
     $dbCat = new Category(); 
     $dbCat->code = $cat->code; 
     $dbCat->name = $cat->name; 
     $dbCat->save(); 
     return $dbCat->toJson(); 


} 

当我试图使用curl然后我收到以下错误

Message: 

Trying to get property of non-object 
Location: 

C:\xampp\htdocs\NewBlog\application\controllers\api\category.php on line 22 

张贴和堆栈跟踪是

#0 C:\xampp\htdocs\NewBlog\laravel\laravel.php(42): Laravel\Error::native(8, 'Trying to get p...', 'C:\xampp\htdocs...', 22) 
#1 C:\xampp\htdocs\NewBlog\application\controllers\api\category.php(22): Laravel\{closure}(8, 'Trying to get p...', 'C:\xampp\htdocs...', 22, Array) 
#2 [internal function]: Api_Category_Controller->post_index() 
#3 C:\xampp\htdocs\NewBlog\laravel\routing\controller.php(325): call_user_func_array(Array, Array) 
#4 C:\xampp\htdocs\NewBlog\laravel\routing\controller.php(285): Laravel\Routing\Controller->response('index', Array) 
#5 C:\xampp\htdocs\NewBlog\laravel\routing\controller.php(165): Laravel\Routing\Controller->execute('index', Array) 
#6 C:\xampp\htdocs\NewBlog\laravel\routing\route.php(153): Laravel\Routing\Controller::call('[email protected]', Array) 
#7 C:\xampp\htdocs\NewBlog\laravel\routing\route.php(124): Laravel\Routing\Route->response() 
#8 C:\xampp\htdocs\NewBlog\laravel\laravel.php(167): Laravel\Routing\Route->call() 
#9 C:\xampp\htdocs\NewBlog\public\index.php(34): require('C:\xampp\htdocs...') 
#10 {main} 

我该如何解决这个问题?

+0

其中是代码中的第22行? – thedjaney

+0

我不知道请求的样子,但根据文档,你应该得到正常的JSON。 >注意:一些JavaScript库(如Backbone)可能会将输入作为JSON发送到应用程序。您可以像通常那样通过Input :: get访问这些数据。 – thedjaney

+0

请发布C:\ xampp \ htdocs \ NewBlog \ application \ controllers \ api \ category.php的内容以及您正在使用的确切curl命令,以便我们为您提供帮助!谢谢。 –

回答

0

不知道第22行是什么,我的建议是检查$cat实际上是一个对象。它很可能会抛出该错误,因为它是null,或者如错误所述,它是非对象。

1

既然你都尽显$猫输入:: JSON(),您需要确保您发送具有头被设置内容类型的应用程序的卷曲请求/ JSON

卷曲并不是真的为发送json而构建,你能发送普通的post字段吗?

真的......我们需要更多的信息,你的情况一样,该代码使用的是发送一个请求,卷曲

+0

thanx,我发送简单的数据并获取它,现在我试图使用json_encode()和json_decode()将其转换,我能够将数据保存到数据库,但现在问题是数据正在保存两时间.... – user1829474

+0

可能值得张贴您的解决方案,然后,在有人来到此页寻找答案的情况下,如果您现在遇到了问题,那么请开一个新问题,因为这是一个新问题 – duellsy