【发布时间】:2013-10-24 17:02:26
【问题描述】:
作为一个练习,我想创建一个在 XML 和 JSON 之间转换的 ASP.Net Web API。
这是我目前所拥有的:
我认为内容类型检查是正确的,但我无法测试,因为我在尝试发布时收到“方法不允许”,是否可以通过路由/绑定来实现我的目标?
我正在尝试使用 Fiddler 进行测试:
我的路线如下所示:
我的 webapi 路由如下所示: 但我仍然得到不允许的方法:=/
【问题讨论】:
-
你怎么称呼这个动作?你能显示你的客户代码吗?另请显示您当前的路线设置。
-
@DarinDimitrov 我已经添加了这个信息:)
-
不,你展示了你的 MVC 路由设置,而不是你的 Web API 路由。这是两个完全不同的东西。此外,您不能期望在您的 Post 操作中将 POST 请求有效负载放入名为
jsonOrXml的变量中。您必须从请求正文中读取它。它不会作为参数出现。或者,如果您愿意,则必须编写自定义模型绑定器或格式化程序。 -
@DarinDimitrov 抱歉,我们的 webapi 路由在哪里?如何从请求正文中加载?
-
默认情况下,当您使用向导创建新应用程序时,它们被放置在
~/App_Start/WebApiConfig.cs。同样从您的 Fiddler 屏幕截图中,我可以看到您提供了无效的 JSON 有效负载:{sample:"true"}。一个有效的 JSON 应该是这样的:{"sample":"true"}.
标签: c# asp.net asp.net-mvc-4 asp.net-web-api