上传图像网络 Api
Upload Image Web Api
我正在尝试将 SyncFusion 的上传框添加到我的 Web 应用程序。我添加了上传框:
<div id="targetElement">
<div id="UploadDefault"></div>
</div>
<script>
$(function () {
//Declaration
$("#UploadDefault").ejUploadbox({
saveUrl: "/api/project/uploadimage"
});
});
</script>
然后我想使用 WebApi 控制器添加:
[HttpPost]
[Route("project/uploadimage")]
public async Task UploadFile(string fileName, string description)
{
}
但我总是收到 http 响应:
请求的资源不支持http方法'POST'
您在 JS 代码中调用了 "/api/project/uploadimage"
,而您的属性路由是 project/uploadimage
。您还在您的方法中使用参数,因此如果您希望它们通过 url 传递,您需要将它们添加到 Route
属性 ([Route("api/project/uploadimage/{fileName}/{description}")]
) 中,否则您需要从正文中获取它们,因此您需要在方法中使用 [FromBody] 属性。
[HttpPost]
[Route("api/project/uploadimage")]
public async Task UploadFile([FromBody] string fileName,[FromBody] string description)
{
}
我正在尝试将 SyncFusion 的上传框添加到我的 Web 应用程序。我添加了上传框:
<div id="targetElement">
<div id="UploadDefault"></div>
</div>
<script>
$(function () {
//Declaration
$("#UploadDefault").ejUploadbox({
saveUrl: "/api/project/uploadimage"
});
});
</script>
然后我想使用 WebApi 控制器添加:
[HttpPost]
[Route("project/uploadimage")]
public async Task UploadFile(string fileName, string description)
{
}
但我总是收到 http 响应:
请求的资源不支持http方法'POST'
您在 JS 代码中调用了 "/api/project/uploadimage"
,而您的属性路由是 project/uploadimage
。您还在您的方法中使用参数,因此如果您希望它们通过 url 传递,您需要将它们添加到 Route
属性 ([Route("api/project/uploadimage/{fileName}/{description}")]
) 中,否则您需要从正文中获取它们,因此您需要在方法中使用 [FromBody] 属性。
[HttpPost]
[Route("api/project/uploadimage")]
public async Task UploadFile([FromBody] string fileName,[FromBody] string description)
{
}