我使用 ASP.NET Web API 创建 API 项目。
并将产品类添加到模型中。
public class Product
{
public int id { get; set; }
public string name { get; set; }
public string category { get; set; }
public decimal price { get; set; }
}
并将 ProductsController 类添加到 Controller .
public IEnumerable<Product> getProductsByCategory(string category)
{
List<Product> productsInCategory = new List<Product>();
foreach (Product p in products)
{
if (p.category.Equals(category, StringComparison.OrdinalIgnoreCase))
productsInCategory.Add(p);
}
return productsInCategory;
}
[HttpPost]
public void PostByProducts(string name)
{
int newId = 0;
//if (products.Count > 0)
// newId = products[products.Count - 1].id + 1;
//products.Add(new Product { id = newId, name = name, category = category, price = price });
}
然后我使用 python 请求调用 post 方法。
import requests
payload = {'name':'t1'}
r = requests.post("http://localhost:59386/api/products", data=payload)
print r.text
但是,Get 很好。发帖不好。
我在 PostByProducts 方法和调用请求中标记断点。
但不要停止断点。
最佳答案
WebApiConfig 下面:
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
config.EnableSystemDiagnosticsTracing();
}
}
关于c# - ASP.NET Web API Post 方法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24692672/