首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >boost/asio连接,连接被拒绝

boost/asio连接,连接被拒绝
EN

Stack Overflow用户
提问于 2020-01-20 04:40:39
回答 2查看 1.8K关注 0票数 0

我正在使用libscapi,但在尝试使用boost::asio::connect建立连接时不断收到错误。我一直在尝试让简单的例子工作(就像下面的例子),但我总是得到“连接被拒绝”的错误。我想这一定是一个非常简单的错误,但我就是不明白。

代码语言:javascript
运行
复制
#include <boost/asio.hpp>
#include <iostream>


int main(int argc, char* argv[]) {

    boost::asio::io_service io_service; 
    boost::asio::ip::tcp::endpoint endpoint;
    boost::asio::ip::tcp::resolver resolver(io_service);
    boost::asio::ip::tcp::resolver::query query("www.boost.org", "http");
    boost::asio::ip::tcp::resolver::iterator iter = resolver.resolve(query);
    boost::asio::ip::tcp::resolver::iterator end; // End marker.

    while (iter != end)
    {
        boost::asio::ip::tcp::endpoint endpoint = *iter++;
            std::cout << endpoint << std::endl;
    }

    boost::asio::ip::tcp::socket socket(io_service);
    socket.connect(endpoint);
}
EN

Stack Overflow用户

发布于 2020-07-12 01:40:14

boost asio TCP daytime client示例假设您可以访问某个服务器上运行在其默认端口13上的daytime服务。如果服务器不在端口13上运行,您将收到“连接被拒绝”消息。

要在本地测试该示例,必须首先安装xinetd (Debian10- Buster),在/etc/xinetd.d/daytime文件中启用"tcp“daytime服务,然后使用"sudo systemctl restart xinetd.service”重启xinetd。FreeBSD Unix使用inetd。运行daytime服务后,执行boost示例。运行示例时,输入"localhost“或"127.0.0.1”作为"host“。在asio内部的某个地方,tcp::resolver将文本"daytime“映射到端口13。

示例的后半部分"TCP daytime server“假设您没有在端口13上运行的本地服务器。可以使用"sudo systemctl stop xinetd.service”或禁用"tcp“daytime服务,然后如上所述重新启动xinetd。如果你得到一个“绑定:权限被拒绝”,你可能需要使用sudo来运行服务器示例。服务器在窗口中运行后,打开另一个窗口并再次运行客户端示例。

票数 1
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59814196

复制
相关文章

相似问题

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