首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >EventSource的响应的MIME类型("text/html")不是"text/event-stream“。正在中止连接。标头设置为文本/事件流

EventSource的响应的MIME类型("text/html")不是"text/event-stream“。正在中止连接。标头设置为文本/事件流
EN

Stack Overflow用户
提问于 2018-12-03 18:35:23
回答 2查看 8.3K关注 0票数 4

您好,我在使用sse的控制台中收到此错误

EventSource的响应的MIME类型("text/html")不是"text/event-stream“。正在中止连接。

js代码为:

代码语言:javascript
复制
if (typeof(EventSource) !== "undefined") 
{
    var source = new EventSource("../api/updateWellData.php?uid=<?php echo $node_id ?>");
    source.onmessage = function(event) {
        var response = JSON.parse(event.data);
        document.getElementById("result").innerHTML = response.test;
        // some code like the above line
    };
}  
else 
{
    // refresh the page every 30 secs
} 

PHP代码是:

代码语言:javascript
复制
header('Cache-Control: no-cache');
header("Access-Control-Allow-Origin: *");
header("Content-Type: text/event-stream");

require_once("../resources/config.php");

if (isset($_GET['uid']))
{
    $uid = $_GET['uid'];
    while (1) 
    {
        $query = Query("SELECT * FROM well_data_last WHERE well_detail_id = $uid");
        $result = fetch_array($query);
        echo json_encode($result);
        ob_end_flush();
        flush();
        sleep(1);
    }
}

这是我第一次使用上交所,我使用了以下文档:mozilla | w3schools

EN

回答 2

Stack Overflow用户

发布于 2020-03-31 14:21:55

当PHP代码以错误的格式输出文本时,就会出现此错误。

这可能是一条PHP错误消息(所有这些消息都输出为原始的超文本标记语言),或者页面上的一些其他文本不适合the text/event-stream format

如果PHP文件的输出与text/event-stream要求的格式不匹配,它将回退到使用text/html。Javascript要求事件流使用text/event-stream内容类型,因此JS控制台将显示错误,但这只是实际问题的症状-修复您需要修复您的PHP的问题。

在OP的例子中,问题出在他们的echo语句上。所有输出到流的数据都必须由data:处理,并以换行符\n结尾。流本身必须以另一个换行符结束,以指示后面不再有data:消息。

要修复该错误,应更改OP

代码语言:javascript
复制
echo json_encode($result);

代码语言:javascript
复制
echo "data: " . json_encode($result) . "\n\n";

OP代码的另一个问题是在数据库查询中没有针对SQL注入的保护。虽然这与手头的问题无关,但值得指出的是,应该使用准备好的语句。

票数 3
EN

Stack Overflow用户

发布于 2019-12-16 03:58:09

我也有同样的问题,问题是php文件中的语法错误,它显示了一条错误消息。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53591954

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档