答案 0 :(得分:24)
检查此link以获取更多信息
根据我的研究,错误消息仅由FireFox生成 当Internet中的呈现页面为空时。出于某种原因,.NET 在创建时生成响应类型“application / xml” 空页。 Firefox将文件解析为XML并且找不到根 element,吐出错误信息。
换句话说,这是已知的Firefox问题
答案 1 :(得分:3)
希望这可以帮助某人。 我在Action方法中更改了返回值的类型,并且它起作用了。可以在this article中找到更多详细信息。
更改自
return Ok();
到
return Json("Ok");
答案 2 :(得分:1)
public IActionResult MethodName()
{
// YOUR CODE
return StatusCode(204);
}
代码204-服务器成功处理了请求,并且未返回任何内容
有关状态码的更多详细信息,请检查以下页面: List of HTTP status codes
答案 3 :(得分:0)
我通过将服务器上的Content-Type
标头设置为text/plain
来解决此问题。在Node中是这样的:
res.setHeader('Content-Type', 'text/plain');
使用适合您数据的任何MIME类型,例如application/json
等。
答案 4 :(得分:0)
在发布axios调用时出现此错误。而且我们的测试服务器不在
允许的来源:
主机列表。将我们的服务器添加到application.yml的allowed-origin中即可解决此问题。
答案 5 :(得分:0)
如果您在控制器操作上具有[ValidateAntiForgeryToken]属性,并尝试在没有实际令牌的情况下提交表单,也会发生这种情况。您可以使用
显式呈现令牌@Html.AntiForgeryToken()
这是首选解决方案,或删除验证属性。
答案 6 :(得分:0)
我曾在几种不同的情况下看到过 XML Parsing error: no root element
错误。它通常只出现在 Firefox 开发者控制台中。
返回带有空正文的 200 OK
响应代码。您的服务器应该返回 204 No Content
响应代码。
返回 204 No Content
响应代码,然后将内容附加到响应中。您的服务器应该返回 200 OK
响应代码。
返回错误的 Content-Type
。将其设置为响应正文中使用的相同类型(JSON、XML、纯文本等),否则可能会被错误解析。
如果这些都不能解决您的问题,我会检查您的所有响应标头是否正确。 Content-Length
等其他字段也可能会干扰。
答案 7 :(得分:0)
这是此错误消息的最高 Google 结果,我还没有看到涵盖另一个棘手案例的答案,所以这里是:
如果您的 SVG 正确提供,但缺少结束 </svg>
标记,也会发生这种情况!例如,如果响应仅部分提供,因为它是流式响应并且在中途出错......
答案 8 :(得分:0)
我用
解决了我的问题return NoContent();
当你什么都不想要返回时似乎更清楚。