[英]403 Forbidden AJAX request in Magento 2
我正在使用Magento 2,我想從我的自定義js發送AJAX請求。
這是代碼
jQuery.ajax({
method: "POST",
url: "app/code/Preview/Tag/Block/Baz/getTitle",
data: {data: doc.output()},
}).done(function(data){
console.log(data);
});
但它返回403禁止。
請讓我知道導致問題的原因。
控制器代碼:
root_dir / app /代碼/Preview/Tag/Block/Baz.php
<?php
namespace Preview\Tag\Block;
/**
* Baz block
*/
class Baz extends \Magento\Framework\View\Element\Template
{
public function getTitle()
{
return "Foo Bar Baz";
}
}
?>
您使用的URL錯誤,在Magento2中啟動代碼之前,您需要了解Magento2結構。
您正在使用的是塊而不是控制器,
首先,您需要在文件etc / frontend / routes.xml中定義一條路由
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/etc/routes.xsd">
<router id="standard">
<route id="previewtag" frontName="previewtag">
<module name="Preview_Tag" />
</route>
</router>
</config>
比之后您需要定義控制器文件Controller / Index / Index.php
<?php
namespace Preview\Tag\Controller\Index;
class Index extends \Magento\Framework\App\Action\Action
{
public function execute()
{
// your code here
echo "Foo Bar Baz";
}
}
現在您可以將該網址用作
previewtag/index/index
或previewtag
兩者都一樣
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.