2012-05-18 15 views
7

これは基本的な質問です。しかし、私は自分のウェブサイトのAPIを作るつもりです。まず、このapiは私に使用されますが、後で私は開発者がそれを使用するためにリリースします。私は混乱しています。このウェブサイトは、モバイルアプリとウェブサイトの両方に使用される予定です。私はこれのためにアンドロイドアプリを作るつもりです。json apiを作る方法

質問がありますか?このAPIはさまざまな言語で作成する必要があります。つまり、Androidのplateforms、Objective C for iOS、javascript、php for webなどです。

これはjavascriptでのみ作成するといくつかのプラットフォームで動作しますか?

答えて

7

サーバー側では、JSON APIは1つのプラットフォームで1つの言語で書かれています。これは、PHP、.NET、または任意のプラットフォームにすることができます。

クライアント側(iPhone、Androidなど)では、リクエストを行い、レスポンスを処理できるクライアントをJSON APIに記述する必要があります。

しかし、クライアントAPI全体の一貫性を維持するために、リクエストリプライパターンなどのパターンを使用することができます。これは、使いやすく実装するためにこれを常に使用します。

アイデアはすべてのJSON APIメソッドのためのもので、RequestクラスとResponseクラスがあります。 JSON APIを表すサービスクライアントも作成します。 Javaで

/contact/{id} 
/address_book 
/save_contact/{id} 

マイサービスクライアント(例:

だが、私は私のアドレス帳から私に連絡先の詳細を与えるJSONサービスを持っていると言うの例には、これらのサービスメソッドを持つことができます実装はクライアントplatfo間で異なるだろうが、

public interface AddressBookClient { 
    public GetContactResponse getContact(GetContactRequest request); 
    public GetAddressBookResponse getAddressBook(GetAddressBookRequest request); 
    public SaveContactResponse saveContact(SaveContactRequest request); 
} 

:)このインタフェースを持つことができます同じ手法やパターンを使用すると、一貫性を保つことができます。

希望に役立ちます。私はJSONを要求するためにURLを使用してい

6

JSONベースのREST完全APIのようなものをお勧めします。

これにより、APIの言語が独立します。

APIを作成したら、一般的な言語でクライアントライブラリを作成できます。

+4

回答をダウングレードする理由が予想されます。 –

3

APIがJSONベースのものであれば、現在普及している言語のほとんどすべてに対して実装されています。問題のないさまざまな言語で構築されたアプリケーション間で通信できます。

official JSON siteには、さまざまな言語のライブラリの一覧が表示されます。

1

api.example.com/api.php?action=User.login&username=admin&password=111 

をJSON応答は次のとおりです。

{ 
    "resultcode":100, 
    "resultdata":{ 
     "id":"1", 
     "username":"admin", 
     "password":"$1$$TUPijxhaACBBZHMowbtgD.", 
     "name":"chenwendong", 
     "email":"[email protected]", 
     "sex":"\u7537", 
     "age":"11", 
     "phone":"15811111111", 
     "address":"\u5317\u4eac\u7231\u7231\u7231\u554a\u554a\u554a\u554a\u554a\u554a\u554a\u554a\u554a\u554a\u554a\u554a\u554a\u554a\u554a\u554a\u554a\u554a\u554a\u554a\u554a\u554a\u554a\u554a\u554a", 
     "province_id":"1", 
     "city_id":"1", 
     "last_login_ip":"127.0.0.1", 
     "last_login_time":"2012-05-07 17:32:55", 
     "state":"1", 
     "intime":"2012-05-07 09:49:11", 
     "is_deleted":"0", 
     "province":"\u5317\u4eac\u5e02", 
     "city":"", 
     "sid":"fcd6321c4cd4748a0cee2e7cc337506b", 
     "uid":"1", 
     "message_count":"11" 
    } 
} 

その後、誰かがそれを解読するには、Android JSONを使用することができます。

関連する問題