我有一个 Azure 逻辑应用程序,它接收来自 Salesforce 的出站消息。我想限制这些请求的并发,所以我在我的逻辑应用程序的 http 触发器上设置了并发控制限制:
"triggers": {
"manual": {
"inputs": {
"schema": {}
},
"kind": "Http",
"runtimeConfiguration": {
"concurrency": {
"runs": 1
}
},
"type": "Request"
}
}
这需要我使我的 Salesforce 确认操作异步:
"Acknowledge_SalesForce_Success": {
"inputs": {
"body": "<soap:Envelope xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\">\n <soap:Body>\n <notificationsResponse xmlns:ns2=\"urn:sobject.enterprise.soap.sforce.com\" xmlns=\"http://soap.sforce.com/2005/09/outbound\">\n <Ack>true</Ack>\n </notificationsResponse>\n </soap:Body>\n</soap:Envelope>",
"statusCode": 200
},
"kind": "Http",
"operationOptions": "Asynchronous",
"runAfter": {},
"type": "Response"
}
问题是,现在每次 Salesforce 发送出站消息时,他们都会立即从逻辑应用程序获得内置的 202 响应,其中包含正在排队的操作的 json 详细信息,而不是我上面的确认操作,Salesforce 无法读取并失败。这导致 Salesforce 不断重试。
有没有一种方法可以覆盖 Microsoft 已将其配置为发送和发送我自己的自定义 SOAP 确认的自动 202 响应?