データを取得および送信するアクションを持つAPIコントローラがあります。私はGetProductByIdにアクセスしようとしています。ajax bu productIdパラメータからmeyhodは常にゼロ(0)に等しいです。 GetAllメソッドをGETメソッドで呼び出す場合は、すべて問題ありません。 のJavaScriptコードASP.NET Core APIパラメータがnullです
var product = JSON.stringify({ productId: id });
$http({
method: 'POST',
contentType: 'application/json',
url: '/api/Product/ProductInfo',
data: product
}).then(function successCallback(response) {
console.log(response);
}, function errorCallback(response) {
console.log(response);
});
以下のようなもので、その場合は、何が起こっている理由をAPIコントローラーが
[Route("api/Product")]
public class ProductController : BaseController
{
[HttpPost]
[Route("ProductInfo")]
public Product GetProductById([FromBody]int productId)
{
return UnitOfWork.GetRepository<Product>().FirstOrDefault(i => i.Id == productId);
}
[HttpGet]
[Route("GetAll")]
public string GetAll()
{
return "Can";
}
}
以下のようなもので、誰もが言うことはできますか?
、体として123を使用します。私はpath @ productId = 1のようなurlを呼び出さないでください。またプリミティブ型の代わりに参照型を使うべきではありません。 –
Cool。それは本質的にそれがポストであることを考えると正しい方法です。 :)これらのケースでは、キー値のペアを使用できますが、とにかく必要なクラスはありません。 –
KeyValuePair?どうすればjsonから送信することができますか、またはapiのアクションから取得することは明らかですか? –