javascript - Magento 响应 302 中的操作 ajax 调用(需要管理员登录)

标签 javascript ajax magento magento-1.4

我将在 Magento block 中发出 AJAX 请求,该请求在我自己的模块 Controller 中调用操作。但此请求的响应是 302,如果我未登录,则重定向到管理登录页面。 此请求位于前面,不需要管理员登录。

我的 JavaScript 代码:

var xmlhttp;
if(typeof XMLHttpRequest !== 'undefined') xmlhttp = new XMLHttpRequest();
xmlhttp.open("POST", "http://mac-4.local:8888/magento_sample_1.4.2/index.php/disponibilityshippingicon/disponibility/setcustomeraddressinsession/", true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send('city=' + jsonAddress['city'] + '&cp=' + jsonAddress['cp'] + '&country=' + jsonAddress['country']);

我的 Controller 代码:

class ColisWeb_DisponibilityShippingIcon_DisponibilityController extends Mage_Adminhtml_Controller_Action
{

public function setcustomeraddressinsessionAction() {
    $params = $this->getRequest()->getParams();
    Mage::log("ColisWeb - Addresse du visiteur non poussé en session : " . $params['city'] . $params['cp'] . $params['country'], Zend_log::INFO);
    if (isset($params['city'], $params['cp'], $params['country'])) {

        //new Mage_Customer_Model_Address();
        $address =  Mage::getModel('customer/address');
        $address->setCity($params['city']);
        $address->setPostCode($params['cp']);

        $session = Mage::getSingleton('core/session');
        $session->setData('addressColisweb', $address);
        $session->setData('cityAddressColisweb', $params['city']);
        $session->setData('postCodeAddressColisweb', $params['cp']);
        $session->setData('contryAddressColisweb', $params['country']);


    }
    else {


    }


    $this->getResponse()->setHeader('Content-type', 'application/json', true) ;
    $result = array( 'status' => '200');
    $this->getResponse()->setBody(Mage::helper('core')->jsonEncode($result));   
}

}
?>

我的 Magento 版本是 1.4.2

希望有人能帮助我。

感谢您的帮助!

最佳答案

您的 Controller 扩展了Mage_Adminhtml_Controller_Action - 它应该是Mage_Core_Controller_Front_Action

关于javascript - Magento 响应 302 中的操作 ajax 调用(需要管理员登录),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14338496/

相关文章:

javascript - 在 Chrome 或 Firefox 上使用 Visual Studio 2015 调试 Javascript

javascript - Ember.js:如果 Controller 中满足某些条件,则在路由器中重定向?

javascript - onhashchange 的替代品?

javascript - Firefox 后退按钮无法与 Google 广告正常配合

php - Magento cron 试图联系 Paypal?

Magento 1.9.1 可配置样本,调用成员函数

javascript - JQuery 导航菜单在滚动时不会改变颜色

php - 将 JS 字符串转换为 JSON 对象

javascript - 对 JavaScript 创建的 div 进行排序

magento - 本地 XML 覆盖 Magento 扩展的默认配置