私は ios デバイスと php で書かれた Web サービスを持っています。iOS デバイスが Web サービスに要求を送信すると、Web サービスはその正確な iOS デバイスに応答します。サーバーがそのデバイスに応答を送信する方法がわかりません。ご協力いただきありがとうございます!
2 に答える
モバイルサイトまたはアプリの場合は、jquery ajaxを使用してWebサービスにクエリを実行できます。これにより、応答がある場合は応答が返されます。
これらの個々のコンポーネントのそれぞれを調査できます。
1) アプリは、コールバック デリゲート メソッド (ASIHttpRequest または AFNetworking) を使用して Web サービスに HTTP POST 要求を行います。
2) サーバーはリクエストを受け取り、それを解析し、JSON レスポンスを作成してアプリに自動的に返します (ウェブ フレームワークを使用)。
3) アプリのデリゲート コールバック メソッドで、JSON データを NSDictionary として解析します。[yourDictionary valueForKey:@"name"];、[yourDictionary valueForKey:@"age"]、[yourDictionary valueForKey:@"gender"]、[yourDictionary valueForKey:@"email"] などを使用して JSON キー値を抽出します。
その後、アプリは解析されたデータを画面に表示するか、それを使用して他のことを行うことができます。
編集
Web サービス言語として PHP を使用しているため、Symfony 2 Web フレームワークを使用することをお勧めします。
あなたは次のようなものを書くでしょう
// get request
$inputName = $_REQUEST['name'];
// ORM
$em = $this->getDoctrine()->getManager();
// find email based on name
$member = $em->getRepository('MyWebAppWebServiceBundle:Member')->findOneByName($inputName);
...
// construct JSON array
$json = array(
'id' => $member->getId(),
'name' => $member->getName(),
'email' => $member->getEmail()
);
// send the response back to the user as JSON data
$response = new Response(json_encode($json));
$response->headers->set('Content-Type', 'application/json');
return $response;
または、スケーラブルなアプリケーションが必要な場合は、Node.js (サーバー側 Javascript) を使用できます。