JSON.stringify API returns 415 (.net & angular)
JSON.stringify API returns 415 (.net & angular)
我 运行 在我的 angular 前端到我的 .net API.
的 POST 请求上遇到了一些麻烦
这是前面的代码:
[...]
this.uploadFile(JSON.stringify(jsonobject));
}
uploadFile(file)
{
this.files.push(file);
this.uploadService.uploadjsonresponse(file, "JsonFilterResponse").subscribe();
}
和 post 请求:
public uploadjsonresponse(file, apiname) {
return this.httpClient.post(this.SERVER_URL + apiname, file);
}
最后是 .net 代码:
[HttpPost]
[Route("api/JsonFilterResponse")]
[RequestSizeLimit(4_000_000_000)]
[Microsoft.AspNetCore.Cors.EnableCors]
public IActionResult JsonFilterResponse([FromBody] string jsonresult)
{
try
{
if (jsonresult != null)
{
Response.Body.Flush(); // http response
return Ok(); // server response
}
else
return NotFound();
}
catch (Exception e)
{
Console.WriteLine(e.ToString());
return StatusCode(500, "Internal server error");
}
}
Json 对象是正确的(在控制台上检查过),API 地址也是如此。 API 返回一个我似乎无法动摇的 415。如有任何建议,我们将不胜感激!
尝试不使用 [FromBody]
public IActionResult JsonFilterResponse(string jsonresult)
对于那些可能想知道的人,我找到了答案!替换:
[FromBody] string jsonresult
和
[FromBody] JsonElement jsonresult
并使用
var json = System.Text.Json.JsonSerializer.Serialize(jsonresult);
解读结果!
我 运行 在我的 angular 前端到我的 .net API.
的 POST 请求上遇到了一些麻烦这是前面的代码:
[...]
this.uploadFile(JSON.stringify(jsonobject));
}
uploadFile(file)
{
this.files.push(file);
this.uploadService.uploadjsonresponse(file, "JsonFilterResponse").subscribe();
}
和 post 请求:
public uploadjsonresponse(file, apiname) {
return this.httpClient.post(this.SERVER_URL + apiname, file);
}
最后是 .net 代码:
[HttpPost]
[Route("api/JsonFilterResponse")]
[RequestSizeLimit(4_000_000_000)]
[Microsoft.AspNetCore.Cors.EnableCors]
public IActionResult JsonFilterResponse([FromBody] string jsonresult)
{
try
{
if (jsonresult != null)
{
Response.Body.Flush(); // http response
return Ok(); // server response
}
else
return NotFound();
}
catch (Exception e)
{
Console.WriteLine(e.ToString());
return StatusCode(500, "Internal server error");
}
}
Json 对象是正确的(在控制台上检查过),API 地址也是如此。 API 返回一个我似乎无法动摇的 415。如有任何建议,我们将不胜感激!
尝试不使用 [FromBody]
public IActionResult JsonFilterResponse(string jsonresult)
对于那些可能想知道的人,我找到了答案!替换:
[FromBody] string jsonresult
和
[FromBody] JsonElement jsonresult
并使用
var json = System.Text.Json.JsonSerializer.Serialize(jsonresult);
解读结果!