【发布时间】:2017-08-03 10:05:39
【问题描述】:
我正在尝试通过 JavaScript 在 C# 中为我的 web api 发送产品列表,但我的 API 不接受这些产品。我该如何通过呢?
这是我的模特
public class ProductModels
{
public int productId { get; set; }
public string description { get; set; }
public int quantity { get; set; }
public decimal amount { get; set; }
}
和我的 API 端点
[Route("api/pag_seguro/transactions/credit_card")]
public IHttpActionResult DoTransactionWithCreditCard(ProductModels[] products, string senderHash, string cardHash)
在 Javascript 中,我尝试像这样发送它
data.products = [{ "productId": 1, "description": "tupperware", "quantity": 1, "amount": 29.80 }];
$.ajax({
type: 'POST',
url: url + '/api/pag_seguro/transactions/credit_card?cardHash=' + cardHash + '&senderHash=' + senderHash,
data: data,
success: function (response) {
console.log(response);
},
dataType: 'json',
async: false
});
还有关于这个端点...如何将 senderHash 和 cardHash 作为 POST 参数发送,以便不会出现在 web url 中?
谢谢大家
【问题讨论】:
-
为什么不创建一个包含所有内容的复杂对象(包括产品数组、卡片哈希和发件人哈希)?
-
我无法将对象发送到 api,或者至少我做错了,如上所示。否则,发送 ProductModel 是正确的。对吗?
标签: javascript c# .net asp.net-web-api