我有一个小但可能不那么简单的问题。
我正在研究一个Controller方法,该方法充当JSON请求的监听器,这些请求将从另一个系统进入我们的系统。具有讽刺意味的是,我将这些传入的请求解析为C#对象没有问题,这是我已经开始工作的了。但是,在这一点上,我正在寻找一种推迟解析对象的方法,并且只是将JSON作为单个大型字符串对象接收。我还没有找到解决方案。
这是我的“监听器”方法的一般格式:
public ActionResult Catch(string notification)
{
... do something with the notification string
}
我已经看到其他地方的解决方案向某个URL发送请求并获取一个JSON字符串的字符串响应,但这不是我在这里必须做的。对象是让这个方法坐在那里,等待任意数量的通知请求,快速将JSON作为字符串抓取,然后将其填入带有日期时间戳的数据库队列中。
稍后会将字符串实际解析为有效对象。
编辑:对不起,我没有说清楚:我目前没有成功收到字符串对象。此时,它始终为null,因为C#尝试解析它。答案 0 :(得分:3)
您可以自己阅读:
public ActionResult Catch()
{
var reader = new StreamReader(Request.InputStream);
var rawString = reader.ReadToEnd();
//do something here.
}