在SQL Server中调用SMS发送API时发生身份验证错误



当我执行此代码以调用此REST API发送SMS时,出现以下错误。问题是什么?

{"状态":{"代码":"1010","类型":"错误","描述":"身份验证错误">

下面是我的代码

Declare @Object as Int;
Declare @ResponseText as Varchar(8000);
DECLARE @reqHead AS VARCHAR(8000) =  
'{
"x-authorization":"N2I2OWU2OTg0MmE0M2JkMmNhYmQyZjg1MDJjYWY1",
"Email":"testing@gmail.com",
"content-type":"application/json"
}'
DECLARE @Body AS VARCHAR(8000) = 
'{
"data": [
{
"message_bag": {
"numbers": "0700000000",
"message": "testing sms.",
"sender": "MY_SENDER_ID"
}
}
]
}'  ;
-- Code Snippet  MSXML2.ServerXMLHttp     MSXML2.XMLHTTP
Exec sp_OACreate 'MSXML2.ServerXMLHttp', @Object OUT;
Exec sp_OAMethod @Object, 'open', NULL, 'post','https://mysmsprovider.co.ke/api/messaging', 'false'
--select @reqHead
Exec sp_OAMethod @Object, 'setRequestHeader', @reqHead, 'Content-Type', 'application/json' 
--select @body
Exec sp_OAMethod @Object, 'send', null, @body
Exec sp_OAMethod @Object, 'responseText', @ResponseText OUTPUT
Select @ResponseText
Exec sp_OADestroy @Object

我通过逐个传递标头而不是传递标头对象来对其进行排序

删除了这行执行sp_OAMethod@Object、'setRequestHeader'、@reqHead、'Content-Type'、'application/json'

添加了这个

EXEC sp_OAMethod@对象,"setRequestHeader",null,"X-Authorization","N2I2OWU2OTg0MmE0M2JkMmNhYmQyZjg1MDuuuuJjYWY1"EXEC sp_OAMethod@Object,'setRequestHeader',null,'email','myemail@gmail.com'EXEC sp_OAMethod@Object,'setRequestHeader',null,'Content-Type','application/json'

最新更新