0

CodeIgniter 1.7 フレームワークを使用して Web サイトを作成しています。別のチームが iPhone のモバイル バージョンを作成しています。そこで、他のチームから認証用の Web サービスを依頼されました。彼らは私を送ると言っています:

POST REQUEST 
Input : login , password, push_token
if failure authentification -> Output HTTP : error code 0
if success -> Output XML :
<DATA>
 <User id='id_user' title='..' first_name='' last_name='' email='' postal='' country_id=''/> 
</DATA>

基本的に私は認証のためにこの機能を持っています:

function check_login($username="", $password="")
{
$username = $_POST['username'];
$password = $_POST['password'];
...
...
}

この投稿Codeigniter Web サービスを調べていますが、Web サービスが初めてなので、実際にどのように機能するのかわかりません。

4

2 に答える 2

5

私はjsonを唯一の出力として使用することを検討します。1つの値は成功であるTRUEFALSE、成功に依存します。処理が簡単で、必要なのはサイトをutf8にすることだけです。

check_login()返品の場合はTRUE、それを成功の条件として使用してください。

返信の例:

/* Class etc. */

function do_login() {
    $arr_json = array('success' => FALSE);
    if ($this->login_library->check_login()) {
        $arr_json['success'] = TRUE;
        $arr_json['user_id'] = $this->login_library->user_id;
    }
    echo json_encode($arr_json);
}

login_libraryログインを行うライブラリの単なる例です。彼らが受け取る応答は、を介してデコードする必要があるだけjson_decode()です。そして、キーがそうであるかどうかを確認するだけsuccessですTRUE

必要に応じて、または類似の追加のキーを用意し、 form_validationerror_messageを介してすべての事後値を実行できます。その後、あなたも前に持つことができます。$arr_json['error_message'] = trim(validation_errors('', "\n"));echo

于 2012-11-27T10:02:56.507 に答える
2

あなたは間違いなく Phil Sturgeons CodeIgniter Rest Server を調べる必要があります:

https://github.com/philsturgeon/codeigniter-restserver

かなり良いドキュメントがあります。彼はそれについてのスクリーンキャストも作成しました: http://philsturgeon.co.uk/blog/2011/03/video-set-up-a-rest-api-with-codeigniter

さらに、Adam Whitney が彼のアプローチを説明しているこの記事をご覧ください。

CodeIgniter を使用して RESTful サービスを構築する

http://adamwhitney.net/blog/?p=707

于 2012-11-27T09:51:21.313 に答える