Plugins Dynamics webhook请求主体返回空
我正在通过一个来自Dynamics的插件触发一个Webhook,该插件在一个自定义实体的字段发生变化时触发。webhook在正确的场景中被命中,但请求主体为空。以下是我的功能:Plugins Dynamics webhook请求主体返回空,plugins,dynamics-crm-2011,webhooks,microsoft-dynamics,Plugins,Dynamics Crm 2011,Webhooks,Microsoft Dynamics,我正在通过一个来自Dynamics的插件触发一个Webhook,该插件在一个自定义实体的字段发生变化时触发。webhook在正确的场景中被命中,但请求主体为空。以下是我的功能: namespace UAM.Webhook.Functions { [DependencyInjectionConfig(typeof(DIConfig))] public static class BulkLibraryAssetTransfer {
namespace UAM.Webhook.Functions
{
[DependencyInjectionConfig(typeof(DIConfig))]
public static class BulkLibraryAssetTransfer
{
[FunctionName("BulkLibraryAssetTransfer")]
public static async Task<HttpResponseMessage> Run([HttpTrigger(AuthorizationLevel.Function,"get", "post", Route = null)]HttpRequestMessage req,
ILogger log, [Inject] IDynamicsHelper dynamicsHelper)
{
log.LogInformation("Beginning BulkLibraryAssetTransfer");
string reqBody = await req.Content.ReadAsStringAsync();
//var remoteContext = GetRemoteExecutionContextFromJson(reqBody);
log.LogInformation(reqBody);
//return req.CreateResponse(HttpStatusCode.OK);
var svc = dynamicsHelper.GetDynamicsSvc();
var input = JObject.Parse(reqBody);
Guid transferId = Guid.Parse(input["PrimaryEntityId"].ToString());
Entity transfer = svc.Retrieve("uam_transfer", transferId, new ColumnSet(true));
//log.LogInformation(transferId.ToString());
bool hasFailures = false, hasSuccesses = false;
IFlushingOperationLog logger = null;
Execute(logger, svc, transfer, ref hasSuccesses, ref hasFailures, log);
return req.CreateResponse(HttpStatusCode.OK);
}
}
}
名称空间UAM.Webhook.Functions
{
[DependencyInjectionConfig(typeof(DIConfig))]
公共静态类散货库资产转移
{
[功能名称(“批量库资产转移”)]
公共静态异步任务运行([HttpTrigger(AuthorizationLevel.Function,“get”,“post”,Route=null)]HttpRequestMessage请求,
ILogger日志,[Inject]IDynamicsHelper动态助手)
{
日志信息(“开始批量图书馆资产转移”);
string reqBody=wait req.Content.ReadAsStringAsync();
//var remoteContext=GetRemoteExecutionContextFromJson(reqBody);
日志、登录信息(reqBody);
//返回请求CreateResponse(HttpStatusCode.OK);
var svc=dynamichelp.getdynamicsvc();
var输入=JObject.Parse(reqBody);
Guid transferId=Guid.Parse(输入[“PrimaryEntityId”].ToString());
实体转移=svc.Retrieve(“uam_转移”,转移ID,新列集(true));
//log.LogInformation(transferId.ToString());
bool hasFailures=false,hasSuccesses=false;
IFlushingOperationLog logger=null;
执行(记录器、svc、传输、ref HASSUCCESS、ref HASSFAILURES、日志);
返回请求CreateResponse(HttpStatusCode.OK);
}
}
}
在上面的代码中,“reqBody”的日志返回{“body”:“}
,因此当我试图解析响应时,其余代码都失败了。我设置了另一个功能,可以正常工作,它在这里返回一组信息,比如BusinessUnitId、initialinguserid以及大约50个其他字段。如果有人能给我指出正确的方向那就太好了