在 ASP.NET 中读取发布的 JSON 数据

Lew*_*han 2 asp.net post json

我订阅了一项群发电子邮件服务,当其末端发生错误时,该服务会作为端点发布到我网站上的页面,以通知我电子邮件已退回。

他们描述如下: The event data is sent in the POST request body using a JSON object.

我需要知道的是如何捕获发布给我的信息?目前我将它们指向一个通用处理程序,一个 .ashx 页面,只要它在 .NET 中,就可以更改为任何内容。

在使用第一个经典 ASP 和现在的 .NET 的 10 年里,我以前从未这样做过,我必须承认我什至不知道从哪里开始。

Ads*_*Ads 5

这是我用来实现类似事情的代码 - 不确定我最初是从哪里得到它的。

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)