M1里怎么用代码控制一个页面不能让用户直接访问

4.22K 浏览M1交流区

M1里怎么用代码控制一个页面不能让用户直接访问

public function getOrderPlaceRedirectUrl()
    {
          return Mage::getUrl('mypaypal/standard/redirect', array('_secure' => true));
    }

如上,我在实现一个新的支付插件,当用户点击Place Order按钮时就会跳转到 mypaypal/standard/redirect 页面。当时用户在前台也可以自己输入这个URL直接访问,我想问一下有没有什么通用的方法来控制mypaypal/standard/redirect这个页面 必须是通过getOrderPlaceRedirectUrl 点击过来的吗?

不想在getOrderPlaceRedirectUrl里面 放置 session或cookie啥 的,然后 在mypaypal/standard/redirect页面里判断有没有isset. 

请教 各位大佬 一下。

0

你可以在控制器方法里加个判断,如果是ajax请求就传递数据,不是ajax的就返回404.

$isAjax = Mage::app()->getRequest()->isAjax();
//或者 Mage::app()->getRequest()->isXmlHttpRequest()
if ($isAjax) {
    ...
}

0