Magento 2 Soap API выпуск - PullRequest
       10

Magento 2 Soap API выпуск

1 голос
/ 23 марта 2020

Я в значительной степени новичок и с 1 месяца перешел на Magento 2, я начал программировать модуль для интеграции сторонних приложений.

Я записал код, но не могу выяснить, как сделать soap вызов моей функции: есть код:

"etc / di. xml"

<preference for="Vendor\Module\Api\PriceServiceInterface" type="Vendor\Module\Model\PriceService" />

"etc / webapi. xml "

<route url="/V1/Vendor/PriceChange" method="POST">
        <service class="Vendor\Module\Api\PriceServiceInterface" method="PriceChange"/>
        <resources>
            <resource ref="anonymous"/>
        </resources>
    </route>

" Api / PriceServiceInterface "

<?php

namespace Vendor\Module\Api;

interface PriceServiceInterface
{
    /**
     * GET for Post api
     * @param string $name
     * @return string
     */

    public function PriceChange($name);
}

" Модель / PriceService. php "

<?php


namespace Vendor\Module\Model;
use Vendor\Module\Api\PriceServiceInterface;

class PriceService implements PriceServiceInterface
{
    public function PriceChange($name) {
        return json_encode("Hello, " . $name);
    }
}

Когда я звоню: https://magento/soap/all?wsdl_list=1 с PostMan вызов присутствует:

"vendorModulePriceServiceV1": {
        "wsdl_endpoint": "https://magento/admin/soap/all?wsdl&services=vendorModulePriceServiceV1"
    },

, если я позвоню в ENdPoint https://magento/it/soap/it?wsdl&services=vendorModulePriceServiceV1, есть список xml.

В в этот момент я не знаю, что мне следует вызывать, чтобы передать параметры XML и обработать функцию.

я пробовал: https://Magnto/soap/it/V1/vendor/PriceChange Но внутри XML Body i не знаю, что я должен объявить, так что в итоге я получаю следующую ошибку:

Incorrect format of request URI or Requested services are missing

xml встроенный:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:def="https://magento/soap/default?services=vendorModulePriceServiceV1">
    <s:Body>

    </s:Body>

</s:Envelope>

Кто-нибудь может мне помочь разобраться? С уважением

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...