Redirect PHPBrowser隐藏API方法“_loadPage";没有遵循301重定向
我正在Codeception v2.2.11中用PHPBowser编写一个测试,它使用 我已将其添加到我的\Helper\Api中,如下所示:Redirect PHPBrowser隐藏API方法“_loadPage";没有遵循301重定向,redirect,codeception,Redirect,Codeception,我正在Codeception v2.2.11中用PHPBowser编写一个测试,它使用 我已将其添加到我的\Helper\Api中,如下所示: public function loadpage($link) { $this->getModule('PhpBrowser')->_loadPage('POST', $link); } $link = 'http://www.fiercebiotech.com/contact'; $I->loadp
public function loadpage($link)
{
$this->getModule('PhpBrowser')->_loadPage('POST', $link);
}
$link = 'http://www.fiercebiotech.com/contact';
$I->loadpage($link);
并在Api Codeception测试中调用它,如下所示:
public function loadpage($link)
{
$this->getModule('PhpBrowser')->_loadPage('POST', $link);
}
$link = 'http://www.fiercebiotech.com/contact';
$I->loadpage($link);
我面临的问题是,当使用\u loadpage
时,它不遵循重定向。最终解决时,此示例链接被重定向到:
以下是当\u loadpage
打开$link
时标题响应控制台的输出
I loadpage "http://www.fiercebiotech.com/contact"
[Request Headers] []
[Page] http://www.fiercebiotech.com/contact
[Response] 404
我需要帮助获得\u loadpage
以不在~/contact处停止,而是按照301重定向到~/contact us,这样我就可以得到输出标题响应
[page] http://www.fiercebiotech.com/contact-us
[response] 200
目前我无法获得\u loadpage
以遵循301重定向。有人成功地做到了这一点吗
我尝试使用Codeception REST函数启动以下重定向并添加allow\u redirects:true
,如下所示,但这两种技术似乎都不起作用(因为没有遵循重定向)
我找到了解决问题的方法: 问题开始于,
\u loadpage
不遵循重定向,它只加载请求的页面并停止。在本例中,“~/contact-us”,忽略页面被重定向到(使用301
)到“~/contact-us”的事实
我不能简单地加载页面(通过\u loadpage
)
获取标题响应
并假设我将获得重定向URL的标头响应
我将只得到原始URL的标题响应
解决方案:
我必须在我的foreach
循环中:
GET
200OK
响应public function Validate_httpStatus_mainNav($mainNavLocator)
{
//Used to test main navigation -- 404 tests
$I = $this;
$mainNavLinks = $I->grabMultiple($mainNavLocator, 'href');
codecept_debug($mainNavLinks);
foreach ($mainNavLinks as $link) {
$I->amOnUrl($link);
$I->sendGET($link);
$I->grabHttpHeader($link);
$I->canSeeResponseCodeIs(HttpCode::OK);
}
}
你的问题是你的状态是404,而不是301。谢谢@Naktibalda的回复。问题是,如果我访问Chrome中的链接~/contact(源代码中的链接),当它到达最终目的地~/contact us时,链接解析为301。正如在这段视频抓取中所看到的,这是我从Chrome得到的标题响应:
状态码URL IP页面类型重定向类型重定向URL 301http://www.fiercebiotech.com/contact 54.225.158.254服务器重定向永久http://www.fiercebiotech.com/contact-us 200http://www.fiercebiotech.com/contact-us 54.225.158.254正常无无