socket.io-client-cpp无法通过https连接到Heroku上的节点应用程序

aelbi1ox  于 11个月前  发布在  其他
关注(0)|答案(2)|浏览(129)

socket.io-client.cpp没有连接到Heroku上的node应用程序,而Node JS socket.io-client没有任何问题。错误是:

[2018-12-11 19:32:43] [connect] Successful connection 
[2018-12-11 19:32:43] [error] handle_read_http_response error: websocketpp.transport:7 (End of File) 
[2018-12-11 19:32:43] [info] Error getting remote endpoint: system:107

字符串
将URL从https更改为http:myapp.heroku.com-现在可以工作。是否可以通过https连接?JS socket.io-client通过安全连接连接,没有任何问题。

rn0zuynd

rn0zuynd1#

已经在DEFINES中使用SIO_TLS构建了socket.io-client-cpp应用程序(编译器标志:-DSIO_TLS)-现在可以通过https连接!这将启用TLS支持,如下所述:
https://github.com/socketio/socket.io-client-cpp/pull/137

uxhixvfz

uxhixvfz2#

我花了几天时间试图找到一个解决方案,阅读通过文档来回,并没有发现什么。我也看到了链接的拉请求,但无法理解它。
最后,我通过这篇文章将-DCMAKE_CXX_FLAGS=-DSIO_TLS添加到portfile.cmake中,终于成功了!
我正在使用vcpkg与MSBuild,它集成到Visual Studio 2022中。在第一次安装软件包后,有一个文件夹“AppData\Local\vcpkg\registrations\git-trees”。在这个文件夹中,还有一个文件夹“2aa 8 fb 06982 abcd 0918726 ba 79 bf 81 edc 9000 a4 b”(尽管可能会有所不同),其中有“portfile.cmake”。
这是我正在使用的配置:

vcpkg_cmake_configure(
  SOURCE_PATH "${SOURCE_PATH}"
  OPTIONS
    -DUSE_SUBMODULES=OFF
    -DCMAKE_INSTALL_INCLUDEDIR=include
    "-DCMAKE_CXX_FLAGS=-DSIO_TLS"
)

字符串
之后,只需删除vcpkg_installed文件夹,让它重建.之后,https为我工作.

相关问题