我正在为与 Magento 和 quickbooks 的 T-Hub 集成设置一个沙盒。我已经使用 WAMP 服务器在本地设置了我的生活站点,现在开始尝试将本地 Magento 站点绑定到 T-hub。我收到的第一个错误表明
“与 Magento 商店的连接失败。服务身份验证失败 - 注意:未定义的索引:第 98 行 c:\wamp\www\testsite\appcode\core\mage\Core\Model\Session\Abtract\Varien.php 中的 httponly。”
经过一番搜索,我发现了一个普遍的共识是我必须在我的本地服务器上放置一个 ssl,完成,这个问题就消失了。现在我收到一条一般错误消息,简单地说
“与 Magento 的连接失败”
我使用了 atandra 包含在他们的文件中的测试页面,它返回了这个:
<RESPONSE Version="4.1">
<Envelope>
<Command>GETORDERS</Command>
<StatusCode>9001</StatusCode>
<StatusMessage>
Service authentication failure - Warning: array_key_exists() expects parameter 2 to be array, string given in C:\wamp\www\adamsarms\app\code\core\Mage\Captcha\Model\Observer.php on line 166
</StatusMessage>
<Provider>Magento</Provider>
</Envelope>
</RESPONSE>
回到这个是 php 文件:
public function checkUserLoginBackend($observer)
{
$formId = 'backend_login';
$captchaModel = Mage::helper('captcha')->getCaptcha($formId);
$loginParams = Mage::app()->getRequest()->getPost('login', array());
$login = array_key_exists('username', $loginParams) ? $loginParams['username'] : null;
if ($captchaModel->isRequired($login)) {
if (!$captchaModel->isCorrect($this->_getCaptchaString(Mage::app()->getRequest(), $formId))) {
$captchaModel->logAttempt($login);
Mage::throwException(Mage::helper('captcha')->__('Incorrect CAPTCHA.'));
}
}
$captchaModel->logAttempt($login);
return $this;
}
该行是它直接指向的行:
$login = array_key_exists('username', $loginParams) ? $loginParams['username'] : null;
我不确定我需要去哪个方向来修复此错误以使 t-hub 开始正确地与 magento 对话,我已经包含了我所拥有的一切,如果有人需要更多信息,请告诉我,我只需要更好地了解可能导致此错误的原因,以便找到修复它的途径。