У меня есть определенный адрес для клиента, и мне нужно получить координаты широты и долготы от Google с помощью API-ключа, однако либо sp_OAGetProperty возвращает пустые данные вместо XML-данных, что может быть причиной для получения пустых результатов, которые он возвращает
Это для целей геоаналитики, я перенастроил сервер так, чтобы он принимал выполнение процедур автоматизации Ole, но все тот же.
Я использую код.
use Development_Weekly
go
DECLARE @Response varchar(8000)
DECLARE @XML xml
DECLARE @Obj int
DECLARE @Result int
DECLARE @HTTPStatus int
DECLARE @Erreur varchar(MAX)
declare @MessageErreur varchar(max)
declare @MessageErreurAvecNumero varchar(max)
declare @URL varchar(600) =(select top 1 [BranchAddressURL] from [Development_Weekly].[dbo].[vwBranchLocation])
EXEC @Result = sp_OACreate 'MSXML2.ServerXMLHttp', @Obj OUT
if @Erreur <> 0 begin set @MessageErreur = 'sp_OACreate MSXML2.ServerXMLHttp.3.0 failed' end
--BEGIN TRY
EXEC @Result = sp_OAMethod @Obj, 'open', NULL, 'GET', @URL, false
if @Erreur <> 0 begin set @MessageErreur = 'sp_OAMethod MSXML2.ServerXMLHttp.3.0 failed' end
EXEC @Result = sp_OAMethod @Obj, 'setRequestHeader', NULL, 'Content-Type', 'application/x-www-form-urlencoded'
if @Erreur <> 0 begin set @MessageErreur = 'sp_OAMethod MSXML2.ServerXMLHttp.3.0 failed' end
EXEC @Result = sp_OAMethod @Obj, send, NULL, ''
if @Erreur <> 0 begin set @MessageErreur = 'sp_OAMethod MSXML2.ServerXMLHttp.3.0 failed' end
EXEC @Result = sp_OAGetProperty @Obj, 'responseXML.xml', @Response OUT
if @Erreur <> 0 begin set @MessageErreur = 'sp_OAGetProperty MSXML2.ServerXMLHttp.3.0 failed' end
EXEC @Result = sp_OADestroy @Obj
if @Erreur <> 0 begin set @MessageErreur = 'sp_OADestroy MSXML2.ServerXMLHttp.3.0 failed' end
select @Result,@Response,@URL