很急!很急 !Ipv6 的库替换。我quick 3.3 替换了curl 和websocket库之后 http 访问网络失败

我quick 3.3 替换了curl 和websocket库之后(根据这个帖子(http://forum.cocos.com/t/ipv6-only/36895))

ios打包 之后 在ipv6环境下 http访问网络
在返回函数中 红色区域的code 值为 CURLE_COULDNT_CONNECT(不能连接到remote 主机或者代理)

请问这是为什么?是我替换错了吗?还是说我有些配置没有配对?
谢谢。

1赞

你是不是用ip 我用ipv4的ip 拼字符串不行 但是用域名可以

1赞

是的,现在已经解决了。就是没用域名的原因。

1赞

能问下你是怎么替换的吗,我也是用的quick3.3 替换ipv6 后 编译有很多错误

2赞

我用的是cocos2d-x 11.1 版本的curl和wesocket库, 替换完再替换 Wesocket.h 和 websocket.cpp 两个文件夹,编译就不报错了

您好,真机IPv6测试时候,必须使用域名访问才可以是么?我这使用域名可以访问,但使用ip就不行。

11.1是什么版本?

是的。只能用域名。

cocos2d-x 引擎的最新版本。

我用了域名,更新最新的版本,也连不上,直接返回的 请求超时

quick 3.3 用xcode编译,我也是替换了 11.1 最新的curl 和 websocket 库之后,再替换最新的 webSocket. h 和 .cpp 文件还是有很多报错 ,和你有什么不同吗

quick3.3 替换后确实会有一堆错误

1赞

quick3.3 我也用cocos2d-x 11.1 版本的curl和wesocket库,
替换完再替换 Wesocket.h 和 websocket.cpp 两个文件 但是编译报错

WebSocket::WebSocket()
: _readyState(State::CONNECTING)
, _port(80)
, _wsHelper(nullptr)
, _wsInstance(nullptr)
, _wsContext(nullptr)
, _isDestroyed(std::make_shared<bool>(false))
, _delegate(nullptr)
, _SSLConnection(0)
, _wsProtocols(nullptr)
{
    // reserve data buffer to avoid allocate memory frequently
    _receivedData.reserve(WS_RESERVE_RECEIVE_BUFFER_SIZE);
    if (__websocketInstances == nullptr)
    {
        __websocketInstances = new (std::nothrow) std::vector<WebSocket*>();
    }

    __websocketInstances->push_back(this);
    
    std::shared_ptr<bool> isDestroyed = _isDestroyed;

     // 下面这一句报错
    //----> no member named 'EVENT_RESET' in cocos2d:Director
    _resetDirectorListener = Director::getInstance()->getEventDispatcher()->addCustomEventListener(Director::EVENT_RESET, [this, isDestroyed](EventCustom){   
        if (*isDestroyed)
            return;
        close();
    });
}

请问你是怎么解决的?

自己回复 自己在11.1里全局搜索了Director::EVENT_RESET 是个字符串
const char *Director::EVENT_RESET = "director_reset";

直接就替换了