magento 2 中的 Zend 框架错误

Zend framework error in magento 2

我正在用 magento 2 开发电子商务网站。当我从主页添加产品时出现错误:

Zend\Uri\Exception\InvalidUriException: URI is not valid and cannot be converted into a string in /var/www/html/voylite/vendor/zendframework/zend-uri/src/Uri.php:359 Stack trace: #0
/var/www/html/voylite/vendor/zendframework/zend-http/src/Header/AbstractLocation.php(98): Zend\Uri\Uri->toString() #1
/var/www/html/voylite/vendor/zendframework/zend-http/src/Header/AbstractLocation.php(133): Zend\Http\Header\AbstractLocation->getUri() #2
/var/www/html/voylite/vendor/zendframework/zend-http/src/PhpEnvironment/Response.php(98): Zend\Http\Header\AbstractLocation->toString() #3
/var/www/html/voylite/var/generation/Magento/Framework/App/Response/Http/Interceptor.php(310): Zend\Http\PhpEnvironment\Response->sendHeaders() #4
/var/www/html/voylite/vendor/zendframework/zend-http/src/PhpEnvironment/Response.php(128): Magento\Framework\App\Response\Http\Interceptor->sendHeaders() #5
/var/www/html/voylite/var/generation/Magento/Framework/App/Response/Http/Interceptor.php(336): Zend\Http\PhpEnvironment\Response->send() #6
/var/www/html/voylite/vendor/magento/framework/HTTP/PhpEnvironment/Response.php(44): Magento\Framework\App\Response\Http\Interceptor->send() #7
/var/www/html/voylite/vendor/magento/framework/Interception/Interceptor.php(146): Magento\Framework\HTTP\PhpEnvironment\Response->sendResponse() #8
/var/www/html/voylite/var/generation/Magento/Framework/App/Response/Http/Interceptor.php(117): Magento\Framework\App\Response\Http\Interceptor->___callPlugins('sendResponse', Array, Array) #9
/var/www/html/voylite/vendor/magento/framework/App/Http.php(185): Magento\Framework\App\Response\Http\Interceptor->sendResponse() #10
/var/www/html/voylite/vendor/magento/framework/App/Http.php(156): Magento\Framework\App\Http->handleDeveloperMode(Object(Magento\Framework\App\Bootstrap), Object(Zend\Uri\Exception\InvalidUriException)) #11
/var/www/html/voylite/vendor/magento/framework/App/Bootstrap.php(263): Magento\Framework\App\Http->catchException(Object(Magento\Framework\App\Bootstrap), Object(Zend\Uri\Exception\InvalidUriException)) #12
/var/www/html/voylite/index.php(38): Magento\Framework\App\Bootstrap->run(Object(Magento\Framework\App\Http)) #13 {main}

您设置的URI无效,请修复。如果不实际查看您的输入内容,很难提供更多帮助。

如需进一步帮助,我在开发 Ajax Controller/Action.

时遇到了完全相同的错误

我正在准备 $result 对象来发送响应:

$result = $this->resultFactory->create(ResultFactory::TYPE_REDIRECT);

并且在某些情况下,根据处理结果设置重定向URL:

$result->setUrl($this->_url->getUrl('checkout/onepage/success'));

但在一个特定情况下,我忘记设置 URL 并导致了之前的错误。在发现问题出在这个小错误之前,我挣扎了一会儿。

我希望这对其他人有帮助。