CakePHP的HttpSocket类错字?

时间:2011-12-05 16:56:57

标签: cakephp

通过HttpSocket向服务器发出HTTPS请求时,我遇到了问题。 HTTP请求工作正常。检查该课程的代码,我注意到HttpSocket中的the following piece starting on line 272。我正在使用最新的2.04稳定版,顺便说一句。

if (is_array($this->request['header'])) { 
    if (!empty($this->request['cookies'])) {
        $cookies = $this->buildCookies($this->request['cookies']);
    }
    $schema = '';
    $port = 0;
    if (isset($this->request['uri']['schema'])) {
        $schema = $this->request['uri']['schema'];
    }
    if (isset($this->request['uri']['port'])) {
        $port = $this->request['uri']['port'];
    }
    if (
        ($schema === 'http' && $port != 80) ||
        ($schema === 'https' && $port != 443) ||
        ($port != 80 && $port != 443)
    ) {
        $Host .= ':' . $port;
    }
    $this->request['header'] = array_merge(compact('Host'), $this->request['header']);
}

据我所知,request数组永远不会有schema个密钥,尽管它有一个scheme密钥,如here所示。有趣的是,似乎the code has been like since version 1.0我在网上找不到任何关于它的内容。我也更改了这封信,只是为了查看我的代码是否有效,但它引起了警告和通知。所以...我错过了什么?

在我开始深入挖掘代码之前,我想由专家运行它。任何帮助或澄清将不胜感激。

感谢。

1 个答案:

答案 0 :(得分:1)

英语不是我的第一语言 但是从我对这些来源的理解来看 http://www.englishforums.com/English/SchemaVsScheme/jkwmw/post.htmhttp://forum.wordreference.com/showthread.php?t=711283&langid=3 以及 http://www.answers.com/topic/scheme / http://www.answers.com/topic/schema 这确实是一个错字。

它可能应该是“方案”,因为它不是图形或“可见”表示,而是应用某种逻辑方式。 此外,完整的框架在任何地方使用关于DB表格表示的URL和模式的方案。

我打开了一张票: http://cakephp.lighthouseapp.com/projects/42648-cakephp/tickets/2345-typo-in-httpsocket-class