Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Rest 如何从一个webhook获得多个结果_Rest_Crm_Webhooks_Bitrix - Fatal编程技术网

Rest 如何从一个webhook获得多个结果

Rest 如何从一个webhook获得多个结果,rest,crm,webhooks,bitrix,Rest,Crm,Webhooks,Bitrix,我正在为CRM软件开发语音应用程序,并尝试从多个联系人处获取信息。 我应该使用的其他调用是: https://xxxxxxxx.bitrix24.de/rest/1/secret_code/crm.contact.get 在中,说明使用指定的ID返回联系人。例如,https://xxxxxxxx.bitrix24.de/rest/1/secret_code/crm.contact.get?id=2返回ID为2的联系人的信息 但是有没有办法让调用返回多个结果?i、 我想从ID为2和4的联系人那里

我正在为CRM软件开发语音应用程序,并尝试从多个联系人处获取信息。 我应该使用的其他调用是:

https://xxxxxxxx.bitrix24.de/rest/1/secret_code/crm.contact.get
在中,说明使用指定的ID返回联系人。例如,
https://xxxxxxxx.bitrix24.de/rest/1/secret_code/crm.contact.get?id=2
返回ID为2的联系人的信息

但是有没有办法让调用返回多个结果?i、 我想从ID为2和4的联系人那里获取信息,有没有一种方法可以通过一个webhook URL实现这一点

我试过
https://intranet_address.bitrix24.de/rest/1/secret_code/crm.contact.get?id=2&id=4
但它只返回ID为4的联系人。我是webhook的新手,所以没有太多经验。有人能给我提供一些见解吗?

使用该查询在一个请求中调用多达50个rest方法

对于您的情况(获得两个ID为2和4的联系人):

答案是

{
  "result": {
    "result": {
      "q1": {
        "ID": "2",
        ...
      },
      "q2": {
        "ID": "4",
        ...
      }
    },
    "result_error": [],
    "result_total": [],
    "result_next": [],
    "result_time": {
      "q1": {
        "start": 1561537159.3722,
        "finish": 1561537159.3804,
        "duration": 0.0081892013549805,
        "processing": 0.0081391334533691
      },
      "q2": {
        "start": 1561537159.3805,
        "finish": 1561537159.3829,
        "duration": 0.0023989677429199,
        "processing": 0.0023589134216309
      }
    }
  },
  "time": {
    "start": 1561537159.3421,
    "finish": 1561537159.3829,
    "duration": 0.040737867355347,
    "processing": 0.010679960250854,
    "date_start": "2019-06-26T11:19:19+03:00",
    "date_finish": "2019-06-26T11:19:19+03:00"
  }
}
使用该查询可以在一个请求中调用多达50个rest方法

对于您的情况(获得两个ID为2和4的联系人):

答案是

{
  "result": {
    "result": {
      "q1": {
        "ID": "2",
        ...
      },
      "q2": {
        "ID": "4",
        ...
      }
    },
    "result_error": [],
    "result_total": [],
    "result_next": [],
    "result_time": {
      "q1": {
        "start": 1561537159.3722,
        "finish": 1561537159.3804,
        "duration": 0.0081892013549805,
        "processing": 0.0081391334533691
      },
      "q2": {
        "start": 1561537159.3805,
        "finish": 1561537159.3829,
        "duration": 0.0023989677429199,
        "processing": 0.0023589134216309
      }
    }
  },
  "time": {
    "start": 1561537159.3421,
    "finish": 1561537159.3829,
    "duration": 0.040737867355347,
    "processing": 0.010679960250854,
    "date_start": "2019-06-26T11:19:19+03:00",
    "date_finish": "2019-06-26T11:19:19+03:00"
  }
}

您要做的是调用
batch
REST方法,该方法在一个请求中最多允许50条命令

不清楚您使用的是哪种语言。但是,如果恰好是JavaScript或TypeScript,您可以使用Bitrix24 REST API客户端使其更简单,因为它会自动对您的命令进行批处理和速率限制,因此您可以传入任意数量的命令:

import Bitrix, { Method } from '@2bad/bitrix'

const bitrix = Bitrix('https://PORTAL.bitrix24.ua/rest/1/WEBHOOK_TOKEN')

bitrix.batch([
  { method: Method.CRM_CONTACTS_GET, params: { ID: 2 } },
  { method: Method.CRM_CONTACTS_GET, params: { ID: 4 } }
  // add here as much as you want
] as const)
  .then((payload) => {
    const [deal2, deal4] = payload.result.result
    console.log('deal2:', deal2)
    console.log('deal2:', deal4)
  })

您要做的是调用
batch
REST方法,该方法在一个请求中最多允许50条命令

不清楚您使用的是哪种语言。但是,如果恰好是JavaScript或TypeScript,您可以使用Bitrix24 REST API客户端使其更简单,因为它会自动对您的命令进行批处理和速率限制,因此您可以传入任意数量的命令:

import Bitrix, { Method } from '@2bad/bitrix'

const bitrix = Bitrix('https://PORTAL.bitrix24.ua/rest/1/WEBHOOK_TOKEN')

bitrix.batch([
  { method: Method.CRM_CONTACTS_GET, params: { ID: 2 } },
  { method: Method.CRM_CONTACTS_GET, params: { ID: 4 } }
  // add here as much as you want
] as const)
  .then((payload) => {
    const [deal2, deal4] = payload.result.result
    console.log('deal2:', deal2)
    console.log('deal2:', deal4)
  })