상세 컨텐츠

본문 제목

[MS-SQL] http 요청 보내기

Server/SQL Server

by 클리엘 클리엘 2020. 10. 27. 10:50

본문

728x90
--실행시 에러가 나면 아래 옵션을 활성화 합니다.
--Exec sp_configure 'show advanced options', 1;
--RECONFIGURE;
--Exec sp_configure 'Ole Automation Procedures', 1;
--RECONFIGURE;

--더이상 필요하지 않으면 옵션을 되돌립니다.
--Exec sp_configure 'show advanced options', 0;
--Exec sp_configure 'Ole Automation Procedures', 0;

--Declare @authHeader nvarchar(64);
Declare @contentType	nvarchar(64);
Declare @postData		nvarchar(2000);
Declare @responseText	nvarchar(2000);
Declare @responseXML	nvarchar(2000);
Declare @ret			int;
Declare @status			nvarchar(32);
Declare @statusText		nvarchar(32);
Declare @token			int;
Declare @url			nvarchar(256);

--Header값이 필요한 경우 사용합니다.
--SET @authHeader = 'BASIC 0123456789';
Set @contentType = 'application/x-www-form-urlencoded';
--Post로 전송할 값은 아래와 같이 사용합니다.
--SET @postData = 'ID=abcdef&age=1234'
Set @url = 'http://www.google.com'

-- Open the connection.
Exec @ret = sp_OACreate 'MSXML2.ServerXMLHTTP', @token Out;
If @ret <> 0 Raiserror('Unable to open HTTP connection.', 10, 1);

-- Send the request.
-- GET/POST 여부에 따라 설정합니다.
Exec @ret = sp_OAMethod @token, 'open', NULL, 'GET', @url, 'false';
--EXEC @ret = sp_OAMethod @token, 'open', NULL, 'POST', @url, 'false';
--EXEC @ret = sp_OAMethod @token, 'setRequestHeader', NULL, 'Authentication', @authHeader;
Exec @ret = sp_OAMethod @token, 'setRequestHeader', NULL, 'Content-type', @contentType;
--EXEC @ret = sp_OAMethod @token, 'send', NULL, @postData;

-- Handle the response.
Exec @ret = sp_OAGetProperty @token, 'status', @status Out;
Exec @ret = sp_OAGetProperty @token, 'statusText', @statusText Out;
Exec @ret = sp_OAGetProperty @token, 'responseText', @responseText Out;

-- Show the response.
Print 'Status: ' + @status + ' (' + @statusText + ')';
Print 'Response text: ' + @responseText;

-- Close the connection.
Exec @ret = sp_OADestroy @token;
IF @ret <> 0 RAISERROR('Unable to close HTTP connection.', 10, 1);
728x90

태그

관련글 더보기

댓글 영역