我订阅了一项群发电子邮件服务,当其末端发生错误时,该服务会作为端点发布到我网站上的页面,以通知我电子邮件已退回。
他们描述如下:
The event data is sent in the POST request body using a JSON object.
我需要知道的是如何捕获发布给我的信息?目前我将它们指向一个通用处理程序,一个 .ashx 页面,只要它在 .NET 中,就可以更改为任何内容。
在使用第一个经典 ASP 和现在的 .NET 的 10 年里,我以前从未这样做过,我必须承认我什至不知道从哪里开始。
这是我用来实现类似事情的代码 - 不确定我最初是从哪里得到它的。
C#
var strJSON = String.Empty;
context.Request.InputStream.Position = 0;
using (var inputStream = new StreamReader(context.Request.InputStream))
{
strJSON = inputStream.ReadToEnd();
}
JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
object serJsonDetails = javaScriptSerializer.Deserialize(strJSON, typeof(object));
// go and process the serJsonDetails object
Run Code Online (Sandbox Code Playgroud)
或VB
Dim strJSON = [String].Empty
context.Request.InputStream.Position = 0
Using inputStream = New StreamReader(context.Request.InputStream)
strJSON = inputStream.ReadToEnd()
End Using
Dim javaScriptSerializer As New JavaScriptSerializer()
Dim serJsonDetails As Object = javaScriptSerializer.Deserialize(strJSON, GetType(Object))
' go and process the serJsonDetails object
Run Code Online (Sandbox Code Playgroud)