Я пытаюсь установить соединение между внешней базой данных 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 ..