0

我有以下 Mongoose 服务器(服务器,而不是 javascript 库):

        std::ostringstream oss;
        oss << "{ \"key\" : \"value\"}";

        mg_printf(conn,
            "HTTP/1.1 200 OK\r\n"
            "Cache: no-cache\r\n"
            "Content-Type: text/plain\r\n"
            "Content-Length: %d\r\n"
            "\r\n",
            oss.str().length());
        mg_write(conn, oss.str().c_str(), oss.str().length());

当我在 Firefox 中打开页面时,它运行良好,我可以看到 JSON 消息{ "key" : "value"}。Firebug 对此很满意,并向我展示了解释后的 JSON 对象。

当我使用 访问相同的 URL 时$.getJSON("http://127.0.0.1:8080/AtoB", [...] ),Firebug 会显示正确的标题,但正文为空。

我该怎么办 ?谢谢

附加信息 :

  • 也不适用于 application/json。为了便于调试,我留下了 text/plain。
  • 不适用于 $.get() 或其他。问题是之前。
  • 也不适用于原始 xmlhttprequest!
  • 我尝试了一个最终的 \0 和一个最终的 \n ,但没有运气。
  • 当从 jQuery 访问时,原始的 mongoose 服务器 (mongoose.exe) 会产生相同的行为。
4

1 回答 1

0

所以 XmlHttpRequest 只接受到同一主机的连接......我知道,但完全忘记了。

.html 文件也必须通过 Mongoose 访问(相同的主机,相同的端口)而不是使用 file://

这个问题确实是AJAX 响应的副本,在 C++ 中无效,但在 Apache

于 2011-05-25T11:47:54.237 回答