当前位置: 首页>>代码示例>>C++>>正文


C++ Address::getHostName方法代码示例

本文整理汇总了C++中Address::getHostName方法的典型用法代码示例。如果您正苦于以下问题:C++ Address::getHostName方法的具体用法?C++ Address::getHostName怎么用?C++ Address::getHostName使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Address的用法示例。


在下文中一共展示了Address::getHostName方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: sendProtocolHeader

void ASIOSocketWrapper::sendProtocolHeader(const MultiplexedSocketPtr&parentMultiSocket, const Address& address,  const UUID&value, unsigned int numConnections) {
//    if (paerntMultiSocket->isZeroDelim()) {
    std::stringstream header;
    header << "GET /" << value.toString() << " HTTP/1.1\r\n";
    header << "Upgrade: WebSocket\r\n";
    header << "Connection: Upgrade\r\n";

    std::string hostname=address.getHostName();
    for (std::string::iterator hi=hostname.begin(),he=hostname.end(); hi!=he; ++hi) {
        *hi=std::tolower(*hi);
    }
    header << "Host: " << hostname;
    if (address.getService()!="80")
        header << ":" << address.getService();
    header << "\r\n";

    header << "Origin: " << address.getHostName() << "\r\n";

    if (parentMultiSocket->getStreamType()!= TCPStream::RFC_6455) {
        header << "Sec-WebSocket-Key1: x!|6 j9  U 1 guf  36Y04  |   4\r\n";
        header << "Sec-WebSocket-Key2: 3   59   2 E4   _11  x80      \r\n";
    } else {
        header << "Sec-WebSocket-Version: 13\r\n";
        header << "Sec-WebSocket-Key: MTIzNDU2Nzg5MGFiY2RlZg==\r\n";
    }
    header << "Sec-WebSocket-Protocol: "
           << (parentMultiSocket->getStreamType()==TCPStream::BASE64_ZERODELIM?"wssst":"sst")
           << numConnections << "\r\n";
    header << "\r\n";
    if (parentMultiSocket->getStreamType()!= TCPStream::RFC_6455) {
        header << "abcdefgh";
    }

    std::string finalHeader(header.str());
    Chunk * headerData= new Chunk(finalHeader.begin(),finalHeader.end());
    rawSend(parentMultiSocket,headerData,true);
    /*
        }else {
            UUID return_value=(parentMultiSocket->isZeroDelim()?massageUUID(UUID::random()):UUID::random());

            Chunk *headerData=new Chunk(TCPStream::TcpSstHeaderSize);
            copyHeader(&*headerData->begin(),parentMultiSocket->isZeroDelim()?TCPStream::WEBSOCKET_STRING_PREFIX():TCPStream::STRING_PREFIX(),value,numConnections);
            rawSend(parentMultiSocket,headerData,true);
        }
    */
}
开发者ID:namwkim,项目名称:sirikata,代码行数:46,代码来源:ASIOSocketWrapper.cpp

示例2: connect

void ASIOConnectAndHandshake::connect(const ASIOConnectAndHandshakePtr &thus,
                                      const Address&address, 
                                      bool no_delay){
    tcp::resolver::query query(tcp::v4(), address.getHostName(), address.getService());
    thus->mResolver.async_resolve(query,
                                  boost::bind(&ASIOConnectAndHandshake::handleResolve,
                                              thus,
                                              no_delay,
                                              boost::asio::placeholders::error,
                                              boost::asio::placeholders::iterator));

}
开发者ID:danielrh,项目名称:sirikata,代码行数:12,代码来源:ASIOConnectAndHandshake.cpp

示例3: connect

void ASIOConnectAndHandshake::connect(const ASIOConnectAndHandshakePtr &thus,
				      const std::tr1::shared_ptr<MultiplexedSocket>&connection,
                                      const Address&address,
                                      bool no_delay){
    tcp::resolver::query query(tcp::v4(), address.getHostName(), address.getService(), Network::TCPResolver::query::all_matching);
    thus->mResolver.async_resolve(
        query,
        connection->getStrand()->wrap(
            boost::bind(&ASIOConnectAndHandshake::handleResolve,
                thus,
                connection,
                address,
                no_delay,
                boost::asio::placeholders::error,
                boost::asio::placeholders::iterator)
        )
    );

}
开发者ID:AsherBond,项目名称:sirikata,代码行数:19,代码来源:ASIOConnectAndHandshake.cpp


注:本文中的Address::getHostName方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。