Общий класс JSON Call - PullRequest
       2

Общий класс JSON Call

0 голосов
/ 09 июня 2011
var JsonClientPatientSearch = Titanium.Network.createHTTPClient();

    // API Url to call
    var url = GetAPIUrl() + "PatientSearch";
    JsonClientPatientSearch.open("POST", url);
    //setting Request Header
    JsonClientPatientSearch.setRequestHeader("Content-type", "application/json");
      JsonClientPatientSearch.send(PatientSearch(PatientSearchCriteria,Credentials,Header));    

    JsonClientPatientSearch.onload = function(){

    };
    JsonClientPatientSearch.onerror = function(e){

    };

У меня много JSON-вызовов в моем проекте. Возможно ли, что я могу написать класс и использовать его экземпляр для выполнения JSON-вызова ... просто передавая параметры ...

Ответы [ 2 ]

2 голосов
/ 09 июня 2011

Почему бы не сэкономить на написании собственной инфраструктуры AJAX, когда вы можете использовать, например, отличная библиотека jQuery?

http://api.jquery.com/jQuery.ajax/

2 голосов
/ 09 июня 2011

Вы можете создавать экземпляры объектов и использовать их повторно. Ваш код будет выглядеть примерно так:

var MyCall = function(url, onLoad, onError){
    // API Url to call
    this.url = GetAPIUrl() + url;
    this.onLoad = onLoad;
    this.onError = onError;
};
MyCall.prototype = {
    call: function(){
        var JsonClientPatientSearch = Titanium.Network.createHTTPClient();
        JsonClientPatientSearch.open("POST", this.url);
        //setting Request Header
        JsonClientPatientSearch.setRequestHeader("Content-type", "application/json");
        JsonClientPatientSearch.send(PatientSearch(PatientSearchCriteria,Credentials,Header));    
        JsonClientPatientSearch.onload = this.onLoad;
        JsonClientPatientSearch.onerror = this.onError;

    }
};

// create callbacks
var myLoad = function(response){ /* do something with response */ },
    myError = function(error){ /* do something with error  */ };
// create instance
new MyCall("PatientSearch", myLoad, myError);
// do a call
MyCall.call();

Вам нужно настроить это в соответствии с тем, как это нужно для работы с другими вашими глобальными объектами. Но, надеюсь, это должно направить вас в правильном направлении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...