Gor*_*ova 2 magento magento2 magento-2.0
我想从 Magento 外部创建一个自定义登录页面。为此,我需要获取 form_key。
如何从 Magento 外部使用 javascript 和/或 PHP 获取当前的 form_key?
笔记:
我愿意在Magento中添加一个PHP文件来生成for_key(但我不知道该写什么以及放在哪里)。
我是 Magento 的新手。
我正在运行 Magento 2.0。
我想出了这个解决方案。但请给我找一个更好的!
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Get the form key</title>
<script>
window.onload=function(){
/* Get form_key from Magento */
var ajax = new XMLHttpRequest();
ajax.open("POST", "/", false);
ajax.send();
document.getElementById('hidden_div').innerHTML = ajax.responseText;
var the_form_key = document.getElementsByName("form_key")[0].value;
alert(the_form_key);
};
</script>
</head>
<body>
<div id="hidden_div" style="display:none"></div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
对于frontend区域使用jQuery.cookie插件,它是 Magento 2 的一部分:
var $formKey = jQuery.cookie('form_key');
对于adminhtml区域使用FORM_KEYJavaScript 常量:
var $formKey = FORM_KEY;
小智 6
有一个例子:
vendor/magento/module-checkout/view/frontend/web/js/sidebar.js
define([
'jquery',
..
'mage/cookies'
Run Code Online (Sandbox Code Playgroud)
'form_key': $.mage.cookies.get('form_key')
Run Code Online (Sandbox Code Playgroud)
我在管理(后端命名空间)中看到有很多调用window.FORM_KEY
| 归档时间: |
|
| 查看次数: |
6051 次 |
| 最近记录: |