- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
AJAX 调用
$.ajax({
url: '/api/Inventory',
cache: false,
type: 'POST',
data: json,
contentType: 'application/json, charset=utf-8',
statusCode: {
201: function (data) {
console.log(data);
viewModel.items.push(data);
}
}
});
发送数据(json
)/请求负载
{"Id":0,"Upc":"3456789012","Quantity":"200","Category":"Vodka","TransactionType":"Audit","MetaData":"ABSOLUT 750ml"}
响应错误
No MediaTypeFormatter is available to read an object of type 'InventoryItem' from content with media type ''undefined''."
路由 POST 方法
public HttpResponseMessage PostItem(InventoryItem item)
JSON 字符串中的所有属性都存在于 InventoryItem
模型中。
关于复杂类型的 similar question 建议从 Beta 升级到 RC 以修复模型绑定(bind)更改,我已经这样做了。
如果问题不明显,我该如何纠正这个错误?如果我将 [FromUri] 属性添加到 Routed POST 方法,则 AJAX 调用会正确路由,但 InventoryItem
为空。如果您需要任何其他信息,请告诉我。
最佳答案
contentType: 'application/json, charset=utf-8',
应该是:
contentType: 'application/json; charset=utf-8',
请注意 ;
而不是 ,
的用法,后者是内容类型和字符集之间的正确分隔符。此外,如果您遵循标准的 RESTful 约定,您的 Controller 操作应称为 Post
而不是如您所示的 PostItem
:
public HttpResponseMessage Post(InventoryItem item)
{
...
}
关于c# - 没有 MediaTypeFormatter 可用于读取类型为 'InventoryItem' 的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11180752/
我正在学习可比性,并在我的库存类(class)中实现它。但是当我去编译代码时,编译器给出了错误。 InventoryItem.java 使用未经检查或不安全的操作。 谁能帮帮我。我的代码有什么问题以及
我从书中重新输入这些代码,不知怎的,我得到了错误“找不到符号 - InventoryItem 类” import java.util.Scanner; public class ReturnObjec
AJAX 调用 $.ajax({ url: '/api/Inventory', cache: false, type: 'POST', data: json,
我是一名优秀的程序员,十分优秀!