Как передать несколько записей в методе REST API POST, используя тело JSON - PullRequest
0 голосов
/ 10 апреля 2019

У меня есть требование, когда мне нужно создать несколько записей в моем пользовательском объекте, используя метод REST API POST. Теперь проблема в том, что я могу создать по одной записи за раз, и я не могу создать несколько записей за один вызов REST API. Я нашел в сети, передав тело запроса JSON, я смогу создать несколько записей. Я совершенно новичок в интеграции и не понимаю, как создавать множественные записи в одном вызове REST API и как я могу передать тело запроса JSON в моем REST API.

Может кто-нибудь помочь мне в достижении моего требования, пожалуйста. Здесь я публикую свой код для справки:

@HttpPost
    global static ID createAddress(String Address, String City, String FirstName, String LastName, String Phone, String Email
                                       ) {
        //First find the contact id matching the email.
        String ContactId = [SELECT Id
                              FROM Contact
                              WHERE Email = :Email].Id;
        //Second post the new ListofAddresses to the owner of the email.                                 
        Address__c thisAddress = new Address__c(
            Contact__c=ContactId,
            Address__c=Address,
            City__c=City,
            First_Name__c=FirstName,
            Last_Name__c=LastName,
            Phone__c=Phone,

        ); 
              /* List<Address__c> result = [SELECT Address__c, City__c, First_Name__c, Last_Name__c, Phone__c
                                   FROM Address__c
                                WHERE Contact__c = :ContactId];                          
           if(result.size() > 0){
            return null;
             }else{*/
          insert thisAddress;
          return thisAddress.Id;

             }

1 Ответ

0 голосов
/ 23 апреля 2019

Попробуйте этот код для передачи нескольких записей в формате Json

@ RestResource (urlMapping = '/ Account / *') глобальный класс MyRestResource {

    @HttpPost
    webService static String doPost() {
        Account account = new Account();
        RestRequest req = RestContext.request;
        List<jsonWrap> jsonWrapList = (List<jsonWrap>)JSON.deserialize(req.requestbody.tostring(),List<jsonWrap>.class);
        return 'Account Success';
    }

    public class jsonWrap{
        String Namex;
        String phonex;
        String websitex;
    }
}

Образец Json

[{"Namex": "test1", "phonex": "12312", "websitex": "test.com"}, {"Namex": "test2", "phonex": "12312", "websitex ":" test.com "}, {" Namex ":" test2 "," phonex ":" 12312 "," websitex ":" test.com "}]

...