从贝宝重定向到 magento 管理模块

Posted

技术标签:

【中文标题】从贝宝重定向到 magento 管理模块【英文标题】:redirect to magento admin module from payapl 【发布时间】:2014-07-04 01:02:49 【问题描述】:

我在 magento admin 中为支付供应商的佣金创建了一个自定义模块。我正在使用带有返回 url hostname/magento/index.php/vender/adminhtml_commision/pay/id/4/key/6qaGSxQ1ICrEtZXkVCw 的 paypal 表单。

成功后,付款页面将重定向到 magento 管理仪表板,而它应该重定向到我的模块页面。

页面正在重定向到我的自定义模块页面,状态为 302 并打开 magento 仪表板。

返回url的响应头:

Cache-Control   no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Connection  Keep-Alive
Content-Length  0
Content-Type    text/html; charset=UTF-8
Date    Thu, 15 May 2014 13:28:22 GMT
Expires Thu, 19 Nov 1981 08:52:00 GMT
Keep-Alive  timeout=5, max=100
Location    http://localhost/topplefiable/index.php/admin/dashboard/
Pragma  no-cache
Server  Apache/2.4.4 (Win32) OpenSSL/0.9.8y PHP/5.4.19
Set-Cookie  adminhtml=foitk9bk5p7qd25sh9ead2c9e7; expires=Thu, 15-May-2014 14:28:25 GMT; path=/topplefiable; domain=localhost; httponly
X-Powered-By    PHP/5.4.19
Request Headersview source
Accept  text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding gzip, deflate
Accept-Language en-US,en;q=0.5
Connection  keep-alive
Cookie  store=s_1396871408storeview; adminhtml=foitk9bk5p7qd25sh9ead2c9e7; __ar_v4=%7C44OQLIKYJZGCJOP7YJWKBT%3A20140326%3A1%7CU4JSAS7TBVBWZGNKUMAMLP%3A20140326%3A1%7CWULQ7VIZHNEFTE7AHVGV7R%3A20140326%3A1; __zlcmid=OhdjUktCqwpH3c
Host    localhost
User-Agent  Mozilla/5.0 (Windows NT 6.1; rv:30.0) Gecko/20100101 Firefox/30.0
Request Headers From Upload Stream
Content-Length  1037
Content-Type    application/x-www-form-urlencoded

发布回复:

address_city    WESLEY CHAPEL
address_country United States
address_country_code    US
address_name    RAYOMOND CHINOY
address_state   FL
address_status  confirmed
address_street  30310 HATZ WAY
address_zip 33543
auth    AVkSV2ZSf5ipfxTbeKzKz86hJLe00dVdfxCNrqCuR2pWDjbyC6eIPYoZM3ibYe85vdBQXvoikxWM96Fsdwls8oQ
business    stripa_1307688220_biz@domain.com
charset windows-1252
custom  
first_name  skumar
handling_amount 0.00
item_name   
item_number 
last_name   kumar
mc_currency USD
mc_fee  0.20
mc_gross    0.20
notify_version  3.8
payer_email asah_1314106743_per@domain.com
payer_id    Z95WWBMAGSL6Y
payer_status    verified
payment_date    06:27:47 May 15, 2014 PDT
payment_fee 0.20
payment_gross   0.20
payment_status  Completed
payment_type    instant
protection_eligibility  Eligible
quantity    1
receiver_email  stripa_1307688220_biz@domain.com
receiver_id SNQXFDAY5XY4G
residence_country   US
shipping    0.00
tax 0.00
test_ipn    1
transaction_subject 
txn_id  3T8615219R228771W
txn_type    web_accept
verify_sign A5aQCVrF8.8eOdu1dA6dqFof.9f4AfUbaoQLdRI9ETV8EbisVo3-1RdB

请指出我哪里错了。

【问题讨论】:

我也在尝试另一种方式,因为我们知道 magento 为其管理 url 创建密钥,因此将成功响应重定向到前端控制器,然后将其重定向到具有最后一个键值的 mageto 管理 url,但它仍然无法正常工作,它会打开仪表板.. 【参考方案1】:

调试错误后找到解决办法,是magento secrete key问题。

Magnto 为每个 url 创建一个密钥,当我们将“key”传递给 paypal 请求时,它不会返回“key”参数。

解决方案:将paypal响应中的“key”重命名为“magentokey”,付款成功后获取“magentokey”并将paypal响应保存在您的数据库记录中。然后使用“magentokey”重定向到您的自定义表单。

【讨论】:

以上是关于从贝宝重定向到 magento 管理模块的主要内容,如果未能解决你的问题,请参考以下文章

为啥 Magento 管理操作重定向到管理仪表板?

成功结帐时的贝宝重定向

django 奥斯卡贝宝重定向

Magento 重定向问题

Magento - URL 重写或重定向问题

Magento 1.9:使用事件sales_order_place_after检出页面不会重定向到成功页面