解析从带有内容类型application / x-www-form-urlencoded的HTTP POST收到的C#中的JSON数据

时间:2016-05-13 21:16:56

标签: c# json forms api urlencode

当内容类型为JSON时,我有一个接收和解析HTTP Post的C#端点。这得益于stackoverflow的一些帮助。我错误地认为这是我所需要的,但从那时起我就知道发布的内容类型是application / x-www-form-urlencoded。 使用我现有的API控制器,我获得所有值的Null。 为了以这种格式接收有效载荷,我需要做些什么?

当JSON:

时有效的当前类
< length

当JSON:

时工作的当前控制器
namespace WebServiceTest1.Models
{

    public class Rootobject
    {
        public DateTime received { get; set; }
        public string authtype { get; set; }
        public string[] tags { get; set; }
        public Routingresults routingResults { get; set; }
        public string device_name { get; set; }
        public int errorcode { get; set; }
        public string source { get; set; }
        public string timestamp { get; set; }
        public string record_id { get; set; }
        public string data { get; set; }
        public int device_id { get; set; }

    }

    public class Routingresults
    {
        public int matchedRules { get; set; }
        public object[] errors { get; set; }
    }



}

感谢您的帮助。

**更新,这是发布的内容:

FORM / POST PARAMETERS

有效负载:{“已收到”:“2016-05-13T20:43:17.845873”,“authtype”:“otp”,“tags”:[“ SOCKETAPI ”,“ SIMPLESTRING “,”_ DEVICE_37555_“],”device_name“:”test(08921)“,”errorcode“:0,”source“:”1111111111111“,”timestamp“:”301“,”data“:” abc123Base64编码“,”device_id“:37555} 键: properties:{“url”:“http://requestb.in/15jclna1”,“payload_is_json”:true,“user_id”:2518,“hook_payload”:“ ALL ”} userid:2518

1 个答案:

答案 0 :(得分:0)

我弄明白了。消息进入的方式,它都存储在一个字符串中。因此,而不是个人得到;设置;我的原始帖子中的值我必须在我的类对象中获取字符串有效内容中的所有值,然后在控制器中解析它。

aspx