iOS で Web サービスを使用するのは初めてです。REST は私の最初の選択肢であり、コード イグナイターを使用してそれを形成しています。
私はコントローラーを持っています:
require APPPATH.'/libraries/REST_Controller.php';
class Sample extends REST_Controller
{
function example_get()
{
$this->load->helper('arh');
$this->load->model('users');
$users_array = array();
$users = $this->users->get_all_users();
foreach($users as $user){
$new_array = array(
'id'=>$user->id ,
'name'=>$user->name,
'age'=>$user->age,
);
array_push( $users_array, $new_array);
}
$data['users'] = $users_array;
if($data)
{
$this->response($data, 200);
}
}
function user_put()
{
$this->load->model('users');
$this->users->insertAUser();
$message = array('message' => 'ADDED!');
$this->response($message, 200);
}
}
、私の Web ブラウザーを使用して、URL へのアクセスはhttp://localhost:8888/restApi/index.php/sample/example/format/json
実際に正常に機能し、次の出力が得られます。
{"users":[{"id":"1","name":"Porcopio","age":"99"},{"id":"2","name":"Name1","age":"24"},{"id":"3","name":"Porcopio","age":"99"},{"id":"4","name":"Porcopio","age":"99"},{"id":"5","name":"Luna","age":"99"}]}
、これにより、アプリでRestKitによるRKRequestを使用して優れた出力が得られます。
問題は put メソッドにあります。この URL :
http://localhost:8888/restApi/index.php/sample/user
常に次のようなエラーが表示されます。
この XML ファイルには、スタイル情報が関連付けられていないようです。ドキュメントツリーを以下に示します。
<xml>
<status/>
<error>Unknown method.</error>
これは私のユーザーモデルです
<?php
class Users extends CI_Model {
function __construct()
{
parent::__construct();
}
function get_all_users()
{
$this->load->database();
$query = $this->db->get('users');
return $query->result();
}
function insertAUser(){
$this->load->database();
$data = array('name'=> "Sample Name", 'age'=>"99");
$this->db->insert('users', $data);
}
}
?>
_put メソッドの回避策は何ですか? 何も挿入しないのはなぜですか? 皆さんありがとう!