1

使用 GCDWebServer(iOS) 时,我想请求 2 个 url,如:192.168.0.121/sample, 192.168.0.121/sample2 与 8080 相同的端口。但一个成功,一个失败。我知道端口被占用,但如何避免它?

这是我的演示,谢谢你... https://github.com/liman123/MockServer_demo

我已阅读所有 README 并检查了示例应用程序,但仍然找不到解决方案,有人可以帮助我吗?(让 GCDWebServer 支持同一个端口的不同路径),谢谢!

4

2 回答 2

2

使用定义路径的不同处理程序执行此操作,例如:

    [_webServer addHandlerForMethod:@"GET"
                          path:@"/path/one"
                  requestClass:[GCDWebServerRequest class]
                  processBlock:^GCDWebServerResponse *(GCDWebServerRequest* request) {

                      GCDWebServerDataResponse* response = [GCDWebServerDataResponse responseWithHTML:@"<html><body><p>Hello World</p></body></html>"];
                      return response;

                  }];

第二个可能看起来像这样:

    [_webServer addHandlerForMethod:@"GET"
                          path:@"/path/two"
                  requestClass:[GCDWebServerRequest class]
                  processBlock:^GCDWebServerResponse *(GCDWebServerRequest* request) {

                      GCDWebServerDataResponse* response = [GCDWebServerDataResponse responseWithHTML:@"<html><body><p>Hello a second time</p></body></html>"];
                      return response;

                  }];

示例位于:https ://github.com/swisspol/GCDWebServer

于 2017-01-20T09:29:33.033 回答
0

您不能在同一个端口上运行 2 个 GCDWebServer 实例。您必须使用一个并安装多个处理程序,如自述文件和示例中所示。

于 2015-09-12T21:06:28.803 回答