Magento 2请求与自定义Web API的任何路由都不匹配

时间:2018-10-02 07:01:48

标签: api magento2

我有自定义模块,并在其中创建了一个自定义Web API。这是位于etc文件夹下的webapi.xml。

<!-- post request -->
<route url="/V1/palindrome" method="POST">
    <service class="EML\Palindrome\Api\PalindromeCheckInterface" method="check" />
    <resources>
        <resource ref="anonymous" />
    </resources>
</route>

<route url="/V1/palindrome" method="PUT">
    <service class="EML\Palindrome\Api\PalindromeCheckInterface" method="check" />
    <resources>
        <resource ref="anonymous" />
    </resources>
</route>

这是我如何调用请求:

<script type="text/javascript">
    require([
        'jquery',
        'mage/translate',
        'mage/storage',
        'uiComponent',
        'ko'
    ], function($, $t, storage, Component, ko) {
        'use strict';

        $(document).ready(function() {
            $('#palindrome-checker').submit(function(e) {
                e.preventDefault();
                if($(this).valid()) {

                    var ajaxValue = [{
                        'stringToCheck' : $('#palindrome-input').val()
                    }];

                    var serviceUrl  = 'rest/V1/palindrome/save';
                    var payload     = {
                        optionVal:  JSON.stringify(ajaxValue)
                    };

                    storage.post(
                        serviceUrl,
                        JSON.stringify(payload)
                    ).done(function( response ) {
                        alert('Palindrome!');
                    }).fail(function( response ) {
                       alert('Not Palindrome :(');
                    });

                    return true;
                }

                return false;

            });
        });
    });
</script>

ajax请求运行正常。但是,我收到404错误,这是响应。我为什么会收到此错误?

  

{“ message”:“请求与任何路由都不匹配。”,“ trace”:null}

0 个答案:

没有答案