#sql-server #api #woocommerce
#sql-сервер #API #woocommerce
Вопрос:
Я пытаюсь установить соединение между внешней базой данных 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=mykeyamp;oauth_signature_method=HMAC-SHA1amp;oauth_timestamp=1458225139amp;oauth_nonce=nVq4rXamp;consumer_secret=mysecretamp;oauth_signature=kzoVx VYSWlLbRpi3f8222222='
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.
Самое неприятное, что когда я заменяю продукты заказами, я получаю ожидаемый результат, но при получении продуктов он продолжает указывать NULL.
Пожалуйста, помогите, потому что у меня выпадают последние волосы на голове.
Также мой босс настаивает на том, чтобы делать это с помощью SQL Server..