【问题标题】:Using fiddler to test my WEB Api . Which content type to select and the input parameter is always null使用 fiddler 测试我的 WEB Api 。要选择的内容类型和输入参数始终为空
【发布时间】:2015-08-26 22:47:31
【问题描述】:

我创建了一个接受 Json 字符串并返回 XML 的 Web API。 我正在尝试使用 fiddler 测试我的 Web API,但无法对其进行测试。

我在代码中的get方法:

[HttpGet]        
        public XmlDocument GetXML([FromBody]string JsonString)
        { 
            System.Xml.XmlDocument xmlDocument = Newtonsoft.Json.JsonConvert.DeserializeXmlNode(JsonString);

在提琴手中:当我将内容类型提供为应用程序 json 时(下面是屏幕截图)。它会引发 HTTP 500 错误。 “发生错误。没有 MediaTypeFormatter 可用于从媒体类型为 'application/json' 的内容中读取类型为 'String' 的对象。”

但是当我提供 content-Type :application/xml.它成功连接到 web api,但输入参数“JsonString”为空。

【问题讨论】:

    标签: c# json asp.net-web-api fiddler


    【解决方案1】:

    从您的屏幕截图来看,您实际上是在传递一个字符串,因为它以等号和引号开头,例如="{ ... }"。这看起来像一个 JSONP 主体。 JSON 看起来会以 { ... } 之类的花括号开头

    如果您需要接受 JSONP,请查看此答案: JSONP with ASP.NET Web API

    【讨论】:

    • 奥利弗,我正在尝试发送一个 Json 字符串。将使用我的 API 的客户端应用程序将以字符串形式传递 Json 数据。
    猜你喜欢
    • 2013-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-09
    • 2014-08-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多