对于我正在使用webhooks的提供者,我设置了一个端点。他们现在将100多个不同的webhook事件直接发送到我的端点。现在,每个事件都有不同的xml父节点。我只对三件事感兴趣。我想知道的是如何区分这些事件?
一种方法是尝试解析第一个节点,然后对照白名单进行检查,然后如果它是我想要的节点之一,我解析成一个特定的对象,然后离开。但对我来说,这感觉相当笨拙,我想知道我是否遗漏了什么,有更好的方法来解决这个问题。
例如:
public ActionResult Webhook()
{
var requestContent = GetRequestContent();
var type = GetTypeBasedOnFirstNode(requestContent);
var document = _xmlService.DeserializeFromString<type>(requestContent);
}