【问题标题】:XML Parsing error: no root element found (empty content) DjangoXML解析错误:找不到根元素(空内容)Django
【发布时间】:2018-06-20 13:16:20
【问题描述】:

我正在使用 ajax 连接到我的 Web 应用程序中的视图。

  $.ajax({
        url: url,
        type: 'PATCH',
        success: function() {
          var d = new Date();
          img = e.target.parentElement.parentElement.getElementsByTagName('img')[0];
          if (img.src.includes("?")){
            img.src = img.src.split("?")[0] + '?' + d.getTime();
          } else {
            img.src = img.src + '?' + d.getTime();
          }

        },
    });

当我点击触发它的按钮时,一切正常,但我得到一个XML Parsing error。根据堆栈交换的其他问题,这可能是因为内容为空。当我使用firefox开发人员工具时,相关视图的reverse的内容确实是空的,因此我认为firefox将其解释为xml。 我的问题是,我不知道如何填写内容。在我看来,我将return Response(status=200) 更改为return Response(status=200, content_type='image/jpeg'),因为视图对图像做了一些事情。但内容似乎仍然是空的,我仍然得到错误。我不知道如何更改内容类型,而不是在响应中指定它。 我只在 Firefox 中得到这个错误,而不是在 chrome 中。

【问题讨论】:

    标签: javascript python ajax django firefox


    【解决方案1】:

    服务器响应缺少标头Content-Type。 因此 JavaScript 的“成功”处理程序无法正确解析响应正文。

    【讨论】:

      【解决方案2】:

      原来我只需要将 content_type 设置为 text/html...

      【讨论】:

      • XML 的正确 MIME 类型是 application/xml,明确不是 text/html
      猜你喜欢
      • 1970-01-01
      • 2017-09-22
      • 1970-01-01
      • 2017-08-03
      • 1970-01-01
      • 2018-06-06
      • 2021-01-17
      • 2017-09-08
      相关资源
      最近更新 更多