2

我正在编写一个程序,我希望能够在本机编译并使用 Emscripten 进行编译。我需要将同步 HTTPS 请求作为该程序的一部分。

我如何在 C++ 中做到这一点?Javascript 方面是有道理的,但我不知道编译到XMLHttpRequest.

4

1 回答 1

2

您的问题有几个答案:

  1. 您可以在 emscripten.h 中使用一些方法,例如emscripten_async_wget
  2. 您可以自己用 Javascript 编写一个方法并从 C++ https://emscripten.org/docs/porting/connecting_cpp_and_javascript/Interacting-with-code.html调用它

但更重要的是,您不能轻松地从 XMLHttpRequest 进行同步调用并取回二进制数据。如果 mime 类型指定二进制数据,Firefox OS 将不允许这样做。但是,您可以覆盖 mime 类型并将生成的文本自己转换为类型化数组。它与此链接中的 hack 技术相同。

https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Sending_and_Receiving_Binary_Data?#Receiving_binary_data_in_older_browsers

乍一看,这听起来像是一个完美的解决方案,但如果您收到大量数据,则必须将该字符数组转换为类型数组,这很慢。

于 2013-06-07T19:11:18.780 回答