CodeIgniter将POST数据从RestClient传递到RestServer API(“SyntaxError:JSON.parse:JSON数据第2行第1列的意外字符”)

时间:2017-08-25 05:22:46

标签: codeigniter jira-rest-api

我花了一整天的时间试图找出这个问题。在这里发布这个问题是我最后的希望。我希望有人能帮助我继续完成我的第一份工作。

SyntaxError:JSON.parse:JSON数据第2行第1列的意外字符

因此,当直接将数据从我的视图传递到RestServer时,POST工作正常。但是,RESTServer API无法找到从RestClient发送的POST数据。

我的例子

<?php

defined('BASEPATH') OR exit('No direct script access allowed');

require APPPATH . 'libraries/REST_Controller.php';



class Example extends REST_Controller {

    function __construct()
    {
        parent::__construct();

        $this->methods['get']['limit'] = 500; 
        $this->methods['post']['limit'] = 200;
        $this->methods['delete']['limit'] = 50; 
    }



    public function post()
    {

            $message = array(
                'id' => null,
                'name' => $this->input->post('name'),
                'message' => $this->input->post('email')
            ); 

        $this->set_response($message); 
    }


}

1 个答案:

答案 0 :(得分:0)

首先,:尝试将POST函数从post()重命名为index_post(),这只是可以帮助SOLID原理的标准。

第二: 您的控制器中是否有放置use CI_Controller命名空间的地方,或者您将其添加到了REST_Controller.php文件中,因为它不在Example控制器中了;只需删除该名称空间。以下3个要求应该可以满足您的需求。

require(APPPATH . 'libraries/REST_Controller.php');
use Restserver\Libraries\REST_Controller;
require (APPPATH . 'libraries/Format.php');

class Example extends REST_Controller { 
... 
}