SQL Server Woocommerce API-соединение дает NULL при получении продуктов, отлично работает с заказами - PullRequest
1 голос
/ 28 марта 2019

Я пытаюсь установить соединение между внешней базой данных SQL Server и API Woocommerce.

Цель - обмен данными между двумя веб-сайтами, где они обмениваются данными, внешний веб-сайт отправит запрос POST.в Woocommerce, чтобы создать продукт, затем ПОЛУЧИТЕ список продуктов, чтобы выбрать последний добавленный, а затем используйте этот идентификатор продукта для создания ссылки «добавить в корзину», которая поместит продукт в корзину.

Теперь вот мой код:

    DECLARE @contentType NVARCHAR(64);
    DECLARE @ret INT;
    DECLARE @responseText NVARCHAR(4000);
    DECLARE @status NVARCHAR(32);
    DECLARE @statusText NVARCHAR(32);
    DECLARE @token INT;
    DECLARE @url NVARCHAR(256);

    SET @contentType = 'application/json';

    set @url = 'https://mywebsite.com/wp-json/wc/v3/products/?consumer_key=mykey&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1458225139&oauth_nonce=nVq4rX&consumer_secret=mysecret&oauth_signature=kzoVx%20VYSWlLbRpi3f8222222%3D'


    EXEC @ret = sp_OACreate 'WinHttp.WinHttpRequest.5.1', @token OUT;

    EXEC @ret = sp_OAMethod @token, 'open', NULL, 'GET', @url, 'false';
    EXEC @ret = sp_OAMethod @token, 'setRequestHeader', NULL, 'Content-type', @contentType;
    EXEC @ret = sp_OAMethod @token, 'send', NULL;

    EXEC @ret = sp_OAGetProperty @token, 'status', @status OUT;
    EXEC @ret = sp_OAGetProperty @token, 'statusText', @statusText OUT;
    EXEC @ret = sp_OAGetProperty @token, 'responseText', @responseText OUT;

    EXEC @ret = sp_OADestroy @token;

    RETURN @responseText;

Когда я возвращаю статус, я получаю 200, что, насколько мне известно, является желательным статусом.

Но когда я возвращаю responseText, я получаю нулевое значение.

Часть, приводящая в бешенство, - это когда я заменяю продукты заказами, я получаю результат, как и ожидалось, но при получении продуктов он продолжает говорить NULL.

Пожалуйста, помогите, потому что я теряю последние несколько волосков на голове.

Также мой босс настаивает на том, чтобы сделать это с помощью SQL Server ..

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